自DBCD单元开始有一个两位的非压缩BCD数,将其转换为ASII码要求用汇编语言去写,希望大神们能指导一下
1个回答
展开全部
;通常4bit表示1位bcd数,非压缩是指一个单元(8bit)放一个BCD数。
这就很简单:
MOV CX,0DBCDH
MOV AL,(CX)
AND AL,0FH
ADD AL,30H ;得到一个ascII码数,在AL中
INC CX
MOV AH,(CX)
AND AH,0FH
ADD AH,30H ;得到第二个ascII码数,在AH中
这就很简单:
MOV CX,0DBCDH
MOV AL,(CX)
AND AL,0FH
ADD AL,30H ;得到一个ascII码数,在AL中
INC CX
MOV AH,(CX)
AND AH,0FH
ADD AH,30H ;得到第二个ascII码数,在AH中
更多追问追答
追问
这句话真心有点看不懂,ADD AL,30H,为什么要加30H啊,求悉心指导,感激不尽
追答
ascII码的定义:对于0-9的数字,是用30H-39H来表示的。
同时对于0-9的数字,十进制与16进制的表示是一样的,可以直接看成16进制的数。将0-9的数字先看成0H-9H,要在前面加3,即加30h。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询