首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 嵌入开发 > 汇编语言 >

帮忙解释程序语句的意思解决方案

2012-02-16 
帮忙解释程序语句的意思以下是程序作用是:16进制数化ASCII码的一般方法(显示内存内容)MOVSI,0MOVBL,10LOP:

帮忙解释程序语句的意思
以下是程序作用是:16进制数化ASCII码的一般方法(显示内存内容)

MOV SI,0 
MOV BL,10 
LOP: MOV DL,[SI] 
MOV CL,4 
SHR DL,CL 
CMP DL,0A 
JC J1 
ADD DL,7 ;这里为什么DL加7
J1: ADD DL,30 ;这里为什么DL加30
MOV AH,2 ;这里为什么AH赋值2
INT 21 
MOV DL,[SI] 
AND DL,0F ;这里为什么DL和0F相与
CMP DL,0A 
JC J2 
ADD DL,7 
J2: ADD DL,30 
MOV AH,2 
INT 21 
MOV DL,20 
MOV AH,2 
INT 21 
INC SI 
DEC BL 
JNZ LOP 
INT 20 

帮忙解释每一条语句的意思,谢谢!

[解决办法]
ADD DL,7 ;这里为什么DL加7
大于10的数的ASCII码值为十六进制数加37H,后面有加30H,所以此处先加7
[解决办法]
J1: ADD DL,30 ;这里为什么DL加30
小于10的十六进制数的ASCII码就是数本身加30H
[解决办法]
AND DL,0F ;这里为什么DL和0F相与 保留低4位,消除高4位

热点排行