编写4位压缩BCD码转换成二十进制整数64转二进制子程序。BCD码高位地址指针为R0,二十进制整数64转二进制结果存于R3、R?

在如何编写把十进制数转化成ASCII的程序之前应先知道十进制数与之对应ASIIC码的数学关系及将它们存放存储器的数制表示形式:

   1、每一位十进制数其值为0~9,其二进制值为:放在字节存储器将占用4个二进制数的位。一个字节内含8个二进制数的位故一个字节可表示2位十进制数。这种用4位二进制数表示一位十进淛数的数制叫BCD码

   2、每一位十进制数“X”转换为ASIIC码的原则为:30+X   如 X=4,其对应ASIIC码=34将其放入一字节存储器里用二进制数表示:,用16进制数表示:16#34

 3、如被转换的十进制数最大为4位数用BCD码表示可占一个字存储器空间,设为字存储器为MW10MW10含2个字节,高字节为MB10低字节为MB11。MB10的高4位为十進制数的千位数值MB10的低4位为十进制数的百位数值。MB11的高4位为十进制数的十位数值MB11的低4位为十进制数的个位数值。如将此4位十进制数转換为ASIIC码需占用一个双字存储器空间,如VD10它含有4个字节,每个字节代表一位ASIIC码其每个字节的高4位数值皆=0011(3),低4位数为十进制数对应嘚数值如十进制数1234,放入字存储器MW10里其内容=11_0100,用16进制数表示为:16#1234转换为ASIIC码值放入VD10里,其内容=11_11_用16进制数表示:16#

    了解上述3点,就可以佷容易编出把十进制数转化成ASCII的程序:

    设MW10为4位十进制数存储区(存数形式为BCD码)VD10为转换为ASIIC码D的存数区。编程可以这样处理:

按这样步骤編程其VD10的内容即为将MW10内的4位十进制数转换为ASIIC码值。

我要回帖

更多关于 十进制整数64转二进制 的文章

 

随机推荐