入门汇编(简单程序设计)

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/qq_41730082/article/details/102746649

将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部分。

猜你喜欢

转载自blog.csdn.net/qq_41730082/article/details/102746649