版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
将TABLE单元的10个字节数据传送到TABLE+5开始的单元。
MOV CX, 10
LEA SI, TABLE
LEA DI, TABLE
ADD DI, 14
ADD SI, 9
STD
REP MOVSB
计算(X+Y)/X,结果存Z单元
商是AX,余数是DX(因为是一个字,而非字节)
字节情况下是AL是商,AH是余数。
XOR DX, DX
MOV AX, X
ADC AX, Y
ADC DX, 0
DIV X
MOV Z, AX
MOV Z + 2, DX
完整代码
STACK SEGMENT PARA 'STACK'
DB 100 DUP(?)
STACK ENDS
DATA SEGMENT
DATA ENDS
ASSUME DS: SEG1, CS: SEG2
SEG1 SEGMENT
TABLE DB 30H, 31H, 32H, 33H, 34H, 35H, 36H, 37H, 38H, 39H
BUF DB 10 DUP(0)
NUMBER DB 7
ASCII DB 0
X DW 1000H
Y DW 0FFFFH
Z DW 0, 0
SEG1 ENDS
SEG2 SEGMENT
START:
MOV AX, SEG1
MOV DS, AX
MOV ES, AX
;(1)查表,26
LEA BX, TABLE
MOV AL, NUMBER
XLAT;查表指令,(AL)<-((BX) + (AL))
MOV ASCII, AL
;(2)字串传送,31
MOV CX, 10
LEA SI, TABLE
LEA DI, TABLE
ADD DI, 14
ADD SI, 9
STD
REP MOVSB
;(3)计算(X+Y),结果存Z单元,37
XOR DX, DX
MOV AX, X
ADC AX, Y
ADC DX, 0
DIV X
MOV Z, AX
MOV Z + 2, DX
SEG2 ENDS
END START
第一次实验内容Code部分。