有沒有人會十進位數值改成二進位、十六進位數值
4.請將下列的十進位數值改成二進位、十六進位數值。(1)256 (2)3291 (3)56.22 (4)0.267
5.請將下列的二進位數值改成十進位、十六進位數值。
(1)1110101101 (2)1011.01 (3)111111.11011
6.請將下列的二進位數值改成單精度表示法(IEEE 754表示法)。
(1)11100111.110101 (2)-0.00001010111
幫幫解個題 感恩喔 轉二進制範例
把整數和小數點區分~
首先是整數部份「56」~
二進制是「111000」~((你可以用電腦的小算盤~工程計算機~或是用手算))
再來小數點比較麻煩~「0.875」
將「0.875」乘2~結果為「1.75」~紀錄整數的數字「1」
去掉整數「1」將「0.75」乘2~結果為「1.5」~紀錄整數的數字「1」
去掉整數「1」後將「0.5」乘2~結果為「1.0」~紀錄整數的數字「1」
因為尾數已為「0」~
所以將整數與小數部份整和可得「111000.111」2
轉十六進制範例
直接將轉換後的二進制拿來用~
從小數點往左往右一次提出四個位元~
直接換算成十六進制~
小數點左邊抓四個位元即「0100」2 = 「4」16
再繼續抓四個位元「0011」2 = 「3」16
接著是小數點右邊抓四個位元即「1110」2 = 「E」16
整合之後即為「43.E」16
P.S.紅字的0是因為不足四個位元,所以要補上0,小數點亦同,但記得整數是往左補0,小數點之後是往右補0
二進位數值(1001101)
個位數代表2^0
第2位數代表2^1
第3位數代表2^2
第4位數代表2^3
第5位數代表2^4
第6位數代表2^5
.....依此類推
=1x2^6+0x2^5+0x2^4+1x2^3+1x2^2+0x2^1+1x2^0
=64+8+4+1
=77
十六進位數值(6A)
個位數代表16^0
第2位數代表16^1
=6x16^1+10x16^0
=106
IEEE-754 浮點數表示法的相關定義:
IEEE 754浮點數標準格式其定義為:
x = (-1)s * 2e-bias * 1.m
其中:s為符號位元(0表示正數,1表示負數),e為指數,bias為偏移量,m為假數
在單精確度(32位元)下,其格式為:
s(1位元)+e(8位元)+m(23位元)
(指數偏移量為127)
接下來,針對題目來看,這兩個數只有最左邊的位元不同,參考單精確度的IEEE 754格式可知,兩者之差異在符號位元,亦即第一個數是負的,第二個數是正的!
再來考慮假數的部分:23個位元均為0,表示此數在正規化後為:1.0(因為23個位元均為0,換算成十進位亦為0),請注意IEEE 754的定義:
x = (-1)s * 2e-bias * 1.m ,在IEEE 754格式中只儲存小數點後面的部分,故換算時必須將1加入!
然後是指數的部分,其值為:011111112 ,將其換算成十進位值為127,扣減掉偏移值127後得到0,表示實際指數為0(127-127)!
代入定義式中:
第一個數為: (-1)1 * 2127-127 * 1.0 = -1*20*1 = -1 * 1 * 1 = -1
第二個數為: (-1)0 * 2127-127 * 1.0 = 1*20*1 = 1 * 1 * 1 = 1
希望對您有幫助.小弟太久沒學了.有點忘記怎算了.0.22一直沒辦法轉成2進位@@"
----------------------------------------------------------------------------------------------------------
4.請將下列的十進位數值改成二進位、十六進位數值。
(1)256 10000000 100 (2)3291 110011011011 CDB (3)56.22 111000.00111000010100011138 (4)0.267
5.請將下列的二進位數值改成十進位、十六進位數值。
(1)1110101101 (2)1011.01 (3)111111.11011
6.請將下列的二進位數值改成單精度表示法(IEEE 754表示法)。
(1)11100111.110101 (2)-0.00001010111 我是沒轉過小數點的...
因為程式裡很少有小數點運算...
程式不是算數哦...如果要轉換這些可以用小算盤選工程型
但是有一個更快的轉法...我是當年在玩微電腦學習機時發現的...
不是跟別人學也不是書上看的哦...那就是利用學習機的數字鍵盤...
先把鍵盤劃分成H part 及L part
在鍵盤左邊由下往上 00-01-10-11 是 H part
在鍵盤下邊由左往右 00-01-10-11 是 L part
所以 H part 00->0-1-2-3四個數字
01->4-5-6-7
10->8-9-A-B
11->C-D-E-F
L part 00->0-4-8-C
01->1-5-9-D
10->2-6-A-E
11->3-7-B-F
當然不必記這些記住鍵盤圖就好了..
先試試看16轉2進制...
A轉出來是1010
怎麼轉呢先看H part 是下面往上數第三排...查出是10
L part 是看下面第三排 所以查出是10
結合起來就是1010
相同的二進制轉16進制...9轉出來是
1001...
大家想像一下其實這真的很容易記...試試看囉
在只有微電腦學習機的那個年代可是沒有小鍵盤可以轉的哦.. 太感謝了
感恩不盡[飛吻] 希望能幫到忙嚕^^"
那您能告訴小弟.
0.22的二進位是什麼呀? 看起來0.22小數部分應該是一個無窮數...
沒那個耐心去算...大概類似圓周率...如果有位數限制大概有解 呵呵.藍大也動手去算了.跟小弟一樣.遇到難題了.
不過不知道是否跟圓周率一樣無解呢.
有興趣的人就試看看吧.
也許也是個金氏世界紀錄吧. 以前沒實物可參考,電腦拿回來後有實物囉。
[很樂][很樂][很樂] 研究了下這鍵盤真的有比較簡單 fishman 發表於 2022年9月13日 08:39
以前沒實物可參考,電腦拿回來後有實物囉。
這個我也看懂了真好用 沒用過來看看參考一下
頁:
[1]