自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

BCD碼簡介及其與十進制數(shù)字字符串之間的轉(zhuǎn)換

開發(fā) 開發(fā)工具
本文首先對BCD碼進行簡單的介紹,然后用代碼演示它與十進制數(shù)字字符串之間的轉(zhuǎn)換。

大家都知道在計算機中,數(shù)據(jù)的常用編碼格式有二進制、八進制、十進制和十六進制等,這些編碼格式之間可以相互轉(zhuǎn)換。在電力通信協(xié)議中,很多數(shù)據(jù)都是用BCD格式來編碼的,這些數(shù)據(jù)需要轉(zhuǎn)換為普通的十進制數(shù)字串。本文首先對BCD碼進行簡單的介紹,然后用代碼演示它與十進制數(shù)字字符串之間的轉(zhuǎn)換。

BCD碼簡介

BCD碼(Binary Coded Decimal‎)是一種二進制的數(shù)字編碼形式,它是用二進制編碼的十進制代碼。這種編碼形式利用四個位來儲存一個十進制數(shù),使得二進制和十進制之間的轉(zhuǎn)換得以快捷地進行。常見的BCD編碼有8421BCD碼,2421BCD碼和余3碼,其中又以8421BCD碼最為常見。本文介紹8421BCD碼與十進制數(shù)字字符串之間的轉(zhuǎn)換。

十進制數(shù)與8421BCD碼的對應(yīng)關(guān)系如下表所示:

十進制數(shù)與8421BCD碼的對應(yīng)關(guān)系表

從上表中,我們也可以看出十進制數(shù)與8421BCD碼的對應(yīng)關(guān)系:兩個字節(jié)的十進制數(shù)字串可以用一個字節(jié)的8421BCD碼來表示。例如,數(shù)字字符串“19”是兩個字節(jié),它對應(yīng)的8421BCD碼為“00011001”(只有一個字節(jié)),其中高四位的“0001“代表十進制的“1“,低四位的“1001“代表十進制的“9“。

十進制數(shù)字串與8421BCD碼之間的轉(zhuǎn)換

根據(jù)前面對BCD碼的介紹,我們可以編寫代碼分別實現(xiàn)BCD碼轉(zhuǎn)換為十進制數(shù)字串和十進制數(shù)字串轉(zhuǎn)換為BCD碼。具體的代碼已經(jīng)提交到了GitHub上,歡迎下載閱讀:https://github.com/zhouzxi/BCD2String。其中,BCD2String函數(shù)用于將8421BCD碼轉(zhuǎn)換為十進制數(shù)字串,String2BCD函數(shù)用于將十進制數(shù)字串轉(zhuǎn)換為8421BCD碼。

本程序是運行在Linux系統(tǒng)上的,大家可以使用“gcc -g -o BCD2String BCD2String.c”命令對代碼進行編譯,之后運行“./BCD2String”命令,結(jié)果如下:

  1. $ ./BCD2String 
  2. szDigitBuf=7539
  3. szBCDData=19
  4. szDigitBuf=19

 

大家可以根據(jù)運行的結(jié)果來閱讀程序,看一下8421BCD碼與十進制數(shù)字串之間的轉(zhuǎn)換原理。

【本文是51CTO專欄作者周兆熊的原創(chuàng)文章,作者微信公眾號:周氏邏輯(logiczhou)】

戳這里,看該作者更多好文

責(zé)任編輯:趙寧寧 來源: 51CTO專欄
相關(guān)推薦

2019-03-25 20:31:58

IP地址轉(zhuǎn)換數(shù)字

2009-08-20 11:29:21

C#16進制字符串

2010-07-14 16:10:37

Perl

2020-10-22 13:33:48

Java基礎(chǔ)入門

2021-08-20 06:58:31

C++Python函數(shù)

2022-12-25 15:56:30

JavaScript字符串

2010-09-14 14:32:02

sql server日

2011-03-23 13:52:09

ORACLESQL十進制

2013-07-25 15:01:47

iOS開發(fā)學(xué)習(xí)十六進制和字符串轉(zhuǎn)換

2011-04-13 14:37:35

十進制浮點.NET

2024-02-22 08:17:31

十六進制數(shù)字計算

2015-11-16 10:24:45

Java常量池字符串

2015-10-27 09:41:16

Javaintern

2010-03-16 10:28:40

Python字符串

2021-05-12 07:50:01

JsParseInt() 怪異

2021-11-24 09:08:38

LeetCode字符串算法

2010-03-29 09:48:20

Ubuntu 10.1

2022-12-15 16:23:32

JavaScrip字符串開發(fā)

2024-08-16 22:00:38

2010-11-26 11:08:20

MySQL字符串
點贊
收藏

51CTO技術(shù)棧公眾號