例1:设内存单元DATA存放一字节无符号数,编程将其拆成两位十六进制数,并存入HEX、HEX+1的低四位。HEX单元存放低位十六进制数,HEX+1单元存放高位十六进制数。
思路:屏蔽,移位
DSEG SEGMENT
DATA DB 8AH
HEX DB 0,0
DSEG ENDS
sseg segment stack
db 100 dup(0)
sseg ends
CSEG SEGMENT
ASSUME CS:CSEG,DS:DSEG,ss:sseg
START:MOV AX,DSEG
MOV DS,AX
MOV AL,DATA
MOV AH,AL
AND AL,0FH
MOV HEX,AL
AND AH,0F0H
MOV CL,4
SHR AH,CL
MOV HEX+1,AH
mov ah,4ch
int 21h
CSEG ENDS
END START
例3:利用查表的方法将1位十六进制数转换成它对应的ASCII码。
思路:查表代替数据运算
DSEG SEGMENT
TABLE DB 30H,31H,32H,33H,34H,35H,36H,37H,38H,39H,41H,42H,43H,44H.45H,46H
HEX DB 4
ASCII DB ?
DSEG ENDS
sseg segment stack
db 100 dup(0)
sseg ends
CSEG SEGMENT
ASSUME CS:CSEG,DS:DSEG,ss:sseg
START:MOV AX,DSEG
MOV DS,AX
MOV BX,OFFSET TABLE
MOV AL,HEX
MOV AH,0
ADD BX,AX
MOV AL,[BX]
mov ah,4ch
int 21h
CSEG ENDS
END START
计算
设X为单字节带符号整数,且存于DATA1单元,计算结果Y 存于DATA2单元。
DSEG SEGMENT
DATA1 DB 45
DATA2 DB ?
DSEG ENDS
sseg segment stack
db 100 dup(0)
sseg ends
CSEG SEGMENT
ASSUME CS:CSEG,DS:DSEG,ss:sseg
START: MOV AX,DSEG
MOV DS,AX
MOV AL,DATA1
CMP AL ,0
JGE BIG
MOV AL,0FFH
JMP DONE
BIG: JE DONE
MOV AL,1
DONE:MOV DATA2,AL
mov ah,4ch
int 21h
CSEG ENDS
END START
例2、设内存中有三个互不相等的无符号字数据,分别存放在DATA开始的字单元中,编程将其中最小值存入MIN单元。
参考程序:
DSEG SEGMENT
DATA DW 4321H,7658H,9B00H
MIN DW ?
DSEG ENDS
sseg segment stack
db 100 dup(0)
sseg ends
CSEG SEGMENT
ASSUME CS:CSEG,DS:DSEG,ss:sseg
START:MOV AX,DSEG
MOV DS,AX
LEA SI,DATA
MOV AX,[SI]
MOV BX,[SI+2]
CMP AX,BX
JC NEXT
MOV AX,BX
NEXT:CMP AX,[SI+4]
JC DONE
MOV AX,[SI+4]
DONE:MOV MIN,AX
mov ah,4ch
int 21h
CSEG ENDS
END START
试编程,统计由DATA单元开始的数据块中负数的个数。结果存于COUNT单元中
设数据定义如下:(10分)
DSEG SEGMENT
DATA
您可能关注的文档
最近下载
- 2025至2030中国人造肌腱和韧带行业细分市场及应用领域与趋势展望研究报告.docx VIP
- 《建筑遮阳工程应用技术标准》(DB37T 5065-2025).docx VIP
- 沪教版 2025-2026 学年上学期七年级生物期末质量检测试卷(附答案).docx VIP
- 沪教版 2025-2026 学年上学期八年级生物期末质量检测试卷(附答案).docx VIP
- 桥式起重机安全检查表.docx VIP
- 2025年事业单位工勤技能-河南-河南电工一级(高级技师)历年参考题库含答案解析(5套).docx VIP
- 英语分级阅读:国家地理《Reading Explorer》A1-A2入门级 REF_unit 5B.pdf VIP
- 小托福单词表汇总(打印版).docx
- 中华人民共和国通信行业标准通信用阀控式密封铅-中国通信标准化协会.PDF VIP
- 四川省成都市高新南区2026届九年级数学第一学期期末考试试题含解析.doc VIP
原创力文档

文档评论(0)