上次有寫到 16進位轉浮點數 的程式寫法。
這次來探討,用手如何計算…
詳細文章請參考:這篇
我只說結論。細部請參考上面文章。
當你得到兩組16進位的數字,先將他轉成二進位,高低位元要轉置的請記得自己轉。
以41 2C 57 57來說 轉成二進位變成
0100 0001 0010 1100 0101 0111 0101 0111
再來切割一下,
S E M 0 10000010 01011000101011101010111
V=(-1)s x M x 2E
而E全為0 跟全為1 有不同的算法這邊不討論,請往上點連結
帶入以上公式會得到 1 x M x 2(130-127)
再來重點的M(小數點部份),很複雜也很麻煩,首先他有22bit,
所以會變成 0x2-1+1x2-2+0x2-3+1x2-4+1x2-5+…..
0是二進位的數字,-1 ,-2 ,-3 是按照順序排下去的。所以要算到2的負22次方…
所以 0 + 1/4 + 0 + 1/16 + 1/32 約 0.3125…
用 此網站 換算出來 大約是 1.346….,得M。
最後相乘得出結果 10.7713 。
還是用程式算比較快……..
總網頁瀏覽量
About
每次一句
Popular Posts
-
本來想寫NPOI,因為最近有用到過。但後來看到 黑大介紹EPPLUS , 想說這個應該更好用。但最近的工作內容一直沒去碰到Excel。 所幸,有了一個需求,是要用excel的,而且問了網管, 網管說基本上office都是2010了。於是放心大膽的用下去。 在那之前先寫個測...
-
前言 最近碰到的問題,起因是單台的對外連線數過大,導致程式發生問題,無法再連線到外部網路。
-
前言 在寫監控告警的時候,看別人寫好的dashboard裡面有一堆函數, 但卻偏偏不知道該怎麼使用,後來才知道這是 Prometheus的語言 PromQL, 這邊會將寫監控時用到的東西記下,基本上都是針對metrics做的處理。
-
前言 應該是個很常見的功能,但是我卻找了很久,一直找不到。
-
前言 紀錄換工作一年後的感想。
Categories
.NET
小技巧
小說
文章分享
正規表示法
序列埠通訊
居家
拼圖
科學上網
逆向工程
偽文青
軟體
硬體
程式概念
逸品
雲端
試算表
資料庫
資訊安全
電影
演算法
網站心得
網路
機器學習
隨筆
鍵盤
雜事記錄
Android
ATOM
AutoIT
Blogger
Chrome
CSS
Dapper
dd-wrt
Debug
DevOops
DISM
DIY
Docker
Driver
Drone
EasyUI
ECK
EPPlus
EXCEL
FFmpeg
Flot Chart
GCP
Git
GKE
Golang
Google App Script
Grafana
IIS
iOS
istio
iTunes
JavaScript
jQuery
k8s
Katalon
Kubernetes
Line
LINQ
LinqToExcel
Linux
Log4Net
MAC
MailKit
Modbus
moment
MS SQL
MsChart
Nginx
NPOI
Nuget
OpenCV
OpenData
Oracle
PHP
Postgresql
powerBuilder
PowerShell
Prometheus
Python
Raspberry
Redis
ReportViwer
RPA
Scrapy
shellScript
SignalR
Solr
SQL CLR
SRE
SRS
Swagger
T-SQL
tampermonkey
Terraform
TFS
TypeScript
Ubuntu
USB安裝
VBA
VivoStick
VMware
VPN
VS Code
WebAPI
Windchill
Windows 10
Windows 7
Windows OS
Windows Server
WorePress
Xpath
Zookeeper
0 意見:
張貼留言