(3) LEA SI,1000H
LEA DI,2000H
MOV CX,100
CLD
REP MOVSB
HLT
4.3 编写一个程序,把自 1000H 单元开始的 100 个数传送至 1050H 开始的储
存中。
【解】 LEA SI,1000H
LEA DI,1050H
ADD SI,63H
ADD DI,63H
MOV CX,100
STD
REP MOVSB
HLT
4.4 在自 0500H 单元开始,存有 100 个数。要求把他传送到 1000H 开始的存
储区中,但在传
送过程中要检查数的值,遇到第一个零就停止传送。
【解】 LEA SI,0500H
LEA DI,1000H
MOV CX,100
N1: MOV AL,[SI]
TEST AL,0
JZ,N2
MOV [DI],AL
INC SI
INC DI
LOOP N1
N2: HLT
4.5 把在题 4.7 中指定的数据块中的正数,传送到自 1000H 开始的存储区;而
把其中的负数,
传送到自 1100H 开始的存储区。且分别统计正数和负数的个数,分别存入
1200H 和 1201H 单
元中。
【解】 LEA SI,0500H
LEA DI,1000H
LEA BX,1100H
MOV CX,100
MOV DX,0
N1: MOV AL,[SI]
评论0
最新资源