首页天道酬勤bcd码怎么转换成ascii码,单片机二进制转bcd码

bcd码怎么转换成ascii码,单片机二进制转bcd码

张世龙 05-13 12:57 101次浏览

将1字节的压缩BCD码转换为两个ASCII码,编写将结果存储在ASC和ASC 1单元中的完整程序,以高位存储行地址、低位存储高地址的形式存储。

1字节压缩BCD代码是2位0~9的数字,4位二进制数对应于1位BCD代码。 所以重要的是分离两个四位的二进制数。 “分离”可以用移位指令和逻辑运算指令实现,然后通过将30H相加,可以得到对应的ASCII码。

流程列表:

数据分段

BCD DB 98H

Asc数据库?

数据结束

代码段

assume cs :代码、ds :数据

START:MOV AX,DATA

MOV DS,AX

MOV CL,4

MOV AL、BCD; 将BCD代码存储在AL和BL中

MOV BL,AL

SHR AL、CL; 右4位,从高4位移动到低4位

ADD AL,30H; 获取高级ASCII代码

MOV ASC,AL

AND BL,0FH; 清高第四名

ADD BL,30H; 得到低位的ASCII码

MOV ASC 1,BL

MOV AH,4CH

INT 21H

代码结尾

结束开始

此程序已汇编的对应列表文件

右移4位相当于除以16,所以也可以用除法指令来实现。 该分段如下:

MOV AL,BCD

MOV BL,16

XOR AH、AH; 扩展到16位

DIV BL; 商在AL,馀数在AH

ADD AL,30H; 高级ASCII代码

MOV ASC,AL

ADD AH,30H; 低位的ASCII代码

MOV ASC 1,AH

单片机bcd码是什么,c语言中的ascii码值 bcd码转换成十进制,bcd码和二进制码转换