-
BCD碼用於用二進位表示十進位, BCD碼分為壓縮的BCD碼和未壓縮的BCD碼。壓縮的 BCD 程式碼是表示兩個 BCD 程式碼的位元組,而未壓縮的 BCD 程式碼是表示未壓縮的 BCD 程式碼的位元組。
-
樓上很好,例如十進位數 0 255 的位元組,0000 0000 1111 1111 的位元組;BCD碼是乙個4位二進位數,表示1位十進位數中0 9的10位數字,常用的是8421-BCD碼,每個數字都有自己的8421碼: 0=0000 1=0001 2=0010 3=0011 4=0100 5=0101 6=0110 7=0111 8=1000 9=1001
-
乙個位元組是 8 位,乙個 BCD 程式碼由乙個 4 位二進位位表示,因此乙個位元組可以放置兩個 BCD 程式碼。
-
乘法和除法可以在不考慮基本系統的情況下完成,例如,十六進製數 0ffh 儲存在 a 中,十進位數 100 放在 b 中,然後除以 ab,所以 a 等於 02h,b 等於 37h,等於 55
然後假設 a 中的數字是 ffh
binbcd:
mov b, 100 (b=100, 十進位 100,)。
div ab(a 等於 02h,b 等於 37h 等於 55)。
mov r3, a (a=02h)
mov a, #10 (a=10=0ah,b=55=37h)
xch a,b (a=55=37h, b=10=0ah)
div ab (a=05h=5 , b=5=05h)
swap a (a=50h,b=05h)
加上A,B(A=55H,這時你們十個人的BCD已經找到了,會。
37h = 55 轉換為 55h
end1 解決這個程式的想法是什麼?
這個想法是找到模,並找到乙個數字來分隔百、十和單位。
例如168168 100 = 1 盈餘 68
68 10 = 6 和 8
8 1 = 8 餘數 0
這樣,百、十和單位就被分開了。
2 節目的第二句"div ab"解釋是十六進製數除以 100,但 A 應該儲存在八位二進位數中,這是怎麼回事?
這是你不了解CPU儲存資料的方式,儲存在a中其實是二進位數歸根結底,機器只知道二進位數,編譯完這個程式後,我們輸入的十進位100也變成了二進位數,我們通常說十六進製數是因為十六進製數和二進位數是有位對應關係的, 比如 1100 0110b=c6h 也就是說,二進位數每 4 位數字和一段寫成乙個十六進製數,二進位數換成十六進製數,3 最後為什麼要加十位和個位數,難道沒有必要把十位和個位數分開嗎?
我想如果你知道BCD程式碼的含義,你就會明白。
BCD 程式碼是表示十進位數的十六進製數。
例如,45h 等於十進位的 69,但如果你說他是 bcd 程式碼,他表示十進位數 45
然後你會發現不是每個十六進製數都是BCD,比如AAH不是BCD,因為沒有像AA這樣的十進位數。
最後總結一下,也就是我們所說的十進位數或者十六進製數,歸根結底,機器就是把它變成乙個二進位數,而機器只知道二進位數,這樣你就可以明白了,我們就不處理不同基數之間的運算了,運算一定要把他換成同乙個基數, 機器也是這樣,但是我們擅長十進位運算,機器擅長二進位運算,二進位位數不方便,所以我們找到了乙個輔助十六進製數。
希望你理解。
-
以下鏈結對 BCD 程式碼進行了詳細說明,BCD 程式碼本質上是無關的,BCD 程式碼是計算機在處理中使用的一種方式,位元組是記憶體的儲存單元。
-
四。 如:
每個位元組為 8 位,可以儲存 8 位 BCD 程式碼。
未貼上)
可以說,奔騰和酷睿只是英特爾用來區分產品世代的子品牌,它們之間最大的區別,總的來說,在於核心架構。 Core 處理器拋棄了之前 P4 的 Netburst 架構。 >>>More
也算是母子情結,在拍攝《終極家族》時,藍心梅很喜歡唐玉哲、王東成和黃小柔這三個孩子,在劇中扮演她的孩子。 春節拍戲期間,藍心梅去日本玩,在日本不小心受傷,回來後行動不便,唐玉哲是個很有愛心的孩子,所以他去機場接機場,對媽媽照顧得很有把握,所以當時兩人之間就發生了緋聞, 但兩人只是母子情誼,拍完戲後,藍心梅也收了唐玉哲和王東成、黃小柔為教子,在劇中也繼續被稱呼為藍心妹的母親。這是一年的好朋友。