- 82
- 0
- 约1.14万字
- 约 22页
- 2019-04-30 发布于江苏
- 举报
第4章 汇编语言程序设计
已知在BUF的起始处保存有N个字符的ASCII码,编写汇编语言程序实现,将这组字符串传送到缓冲区BUFR中,并且使字符串的顺序与原来的顺序相反。
解:BUF DB BONJOUR_BELLE
BUFR DB 100 DUP(?)
MOV CX, N
LEA SI, BUF
LEA DI, BUFR
ADD DI,CX
DEC DI
L1:
MOV AL,[SI]
MOV [DI],AL
INC SI
DEC DI
LOOP L1
利用移位、传送和相加指令实现AX的内容扩大10倍。
解:将扩大后的结果放在DX:AX中,注意到10×AX=8×AX+2×AX。
XOR DX,DX
SHL AX, 1
RCL DX, 1
MOV BX,AX
MOV CX,DX
SHL AX, 1
RCL DX, 1
SHL AX, 1
RCL DX, 1
ADD AX, BX
ADC DX, CX
在缓冲区VAR中连续存放着3个16位的无符号数,编写程序实现将其按递增关系排列;如果VAR中保存的为有符号数,则再编写程序实现将其按递减关系排列。
解:VAR DW 1236,-432,3900
XOR SI,,SI
MOV AX,VAR[SI]
CMP AX, VAR[SI+2]
JAE L1
XCHG AX, VAR[SI+2]
L1:
CMP
原创力文档

文档评论(0)