『壹』 串口出來的壓縮BCD碼如何轉換成十進制數
這個應該比較簡單的,,不過以前不是用vc實現的。
如果確定發過來是每個位元組都是bcd 。。有時候也不用print那麼麻煩
直接用數組完成。
比如接受到20個位元組。你直接申請 41位元組的數組就好了。
自己寫一個轉化函數。。每個位元組,
buf[0] = dat / 10 + '0';
buf[1] = dat % 10 + '0';
這樣自己寫一個函數,然後把弄好的字元串 des_buf顯示一下就好了
void cov(char *buf, char *des_buf, int num)
{
while (num--) {
*des_buf++ = *buf / 10 +'0';
*des_buf++ = *buf++ % 10 +'0';
}
}
至於你說的每次串口存文件。。看你要存的是字元串文件還是 BCD碼文件
不過都一樣。。新建立一個文件。放進去就好了。反正兩個的數組都在上面了。也不麻煩。
『貳』 什麼是壓縮BCD碼
壓縮BCD碼指二進制編碼的十進制
壓縮BCD碼指一個位元組8位存儲2位BCD碼。比如32用8421BCD碼表示如下:非壓縮BCD碼表示:00000011 00000010;壓縮BCD碼表示:0011 0010;使用BCD碼表示10進位制數字比較好理解,且佔用空間較小,在用數字表示的數據方面得到廣泛應用。如果聽到「原長度10個位元組,用壓縮BCD碼表示為5個位元組」也就好理解了。比如「1234567890",即可以說用壓縮BCD碼表示為5個位元組。
(2)壓縮bcd碼轉十進制擴展閱讀:
壓縮BCD碼的應用:BCD計數器也稱為十進位計數器或模10計數器,它廣泛地運用於各種電子設備中。特別是在測試儀表以及另外那些具有十進制輸入與/或輸出的設備中.運用得更普遍。數字計數器.萬用表以及其它數字儀表,就是一類例子;數字電子表是另外一類例子。這與一個標准四位二進制計數器的前十個狀態相同。不過,當計數器計9時,它循環回到0,然後它又重新開始遞增計數。
『叄』 用匯編語言將壓縮的BCD碼轉化為十進制數
MOV
A,
#49H
;取來壓縮的BCD碼
MOV
B,
#16
DIV
AB
;轉換完成
END
可以參考以前的回答:
http://..com/question/260932826.html
『肆』 匯編語言中內存中有一32位壓縮BCD碼,將其轉換成十進制字元串
32 位的壓縮 BCD 碼,可以分解成 8 位十進制數。
再分別加上 30H,即為十進制字元。
轉換完了,怎麼辦?
顯示嗎?
刪除嗎?
...
『伍』 十進制數74轉換為壓縮BCD碼是多少
十進制數74轉換為壓縮BCD碼是01110100。
壓縮BCD碼是指其中各十進制數位都分別由二進制數字來表示的二進制編碼記法。需要注意的是每個十進制數都用一組四位二進制數來表示。不足4位者(十進制數0到7)加添0字開頭,以湊足4位。十進制數74轉換為壓縮BCD碼是7=0111,4=0100。即十進制數74=壓縮BCD碼01110100。
(5)壓縮bcd碼轉十進制擴展閱讀:
計算機只能識別二進制數,但人們卻熟悉十進制數,而不習慣用二進制數,因此,在計算機輸入和輸出數據時,經常採用十進制數。所不同的,這里的十進制數是用壓縮BCD碼來表示的。四位二進制數有十六種組合。從十六種組合中,選擇十種組合來表示十進制的十個數碼,可以有多種方法。
壓縮BCD碼廣泛地運用於各種電子設備中。特別是在測試儀表以及另外那些具有十進制輸入與/或輸出的設備中.運用得更普遍。十進位數字計數器.萬用表以及其它數字儀表,就是一類例子;數字電子表是另外一類例子。這與一個標准四位二進制計數器的前十個狀態相同。
『陸』 十進制數如何轉換為壓縮和非壓縮bcd碼
原是十進制的數的不用轉就是BCD碼,因BCD碼的意就是十進制數碼。壓縮的就是在一個八位位元組中放二位十進制數,這就要動一下了,把原放在二個位元組中的二個單位的數,高位的先改放到位元組的高四位中,再和低位的原就在低四位的或合到一起就成壓縮的了。這樣做的目的主要是為了節省存貯單元,可是在運算中要多用時間了。
『柒』 壓縮BCD碼11111111表示的十進制是多少
d8h=11011000b
壓縮bcd碼與非壓縮bcd碼的區別——
壓縮bcd碼的每一位用4位二進製表示,一個位元組表示兩位十進制數。例如10010110b表示十進制數96d;非壓縮bcd碼用1個位元組表示一位十進制數,高四位總是0000,低4位的0000~1001表示0~9.例如00001000b表示十進制數8.
樓主確定題目沒問題?
『捌』 急!急!!急!bcd碼轉換成十進制數
十進制數74轉換為壓縮bcd碼是01110100b。
所謂的壓縮bcd碼,指的就是用四位二進制數表示一位bcd碼,用一個位元組表示的兩位bcd碼,稱為壓縮型bcd碼。
一個bcd碼佔4位,而一個位元組有8位。若把二個bcd碼放在一個位元組中,就叫壓縮的bcd碼。而一個位元組只放一個bcd碼,高位置0,則叫非壓縮的bcd碼。
『玖』 bcd碼(1001010010)轉換成二進制數是多少轉換成十進制是多少十六進制是多少
bcd碼(10 0101 0010),
轉換成十進制數是:252。
轉換成二進制數是:11111100。
轉換成十六進制是:FC。
『拾』 十進制102轉換成壓縮bcd
每一位都轉成4位2進制
1:0001
0:0000
2:0010
合起來就是0001 0000 0010
壓縮bcd碼的每一位用4位二進製表示,一個位元組表示兩位十進制數。例如10010110b表示十進制數96d;非壓縮bcd碼用1個位元組表示一位十進制數,高四位總是0000,低4位的0000~1001表示0~9.例如00001000b表示十進制數8。
(10)壓縮bcd碼轉十進制擴展閱讀:
十進制小數轉換成二進制小數採用"乘2取整,順序排列"法。具體做法是:用2乘十進制小數,可以得到積,將積的整數部分取出,再用2乘餘下的小數部分,又得到一個積,再將積的整數部分取出,如此進行,直到積中的小數部分為零,或者達到所要求的精度為止。