上机实验03二进制加、减法编程实验

上机实验03 二进制加、减法编程实验

一、实验要求和目的

1.熟悉汇编语言二进制多字节加法基本指令的使用方法;

2.熟悉汇编语言二进制多字节减法基本指令的使用方法;

3.掌握汇编语言编程的一般结构。

六、作业提交

把绘制的流程图、编写的源代码(两个:(1)实现长度为2字的两个多精度数相减;

(2)实现一个长度为3字的多精度数和一个长度为2字的多精度数相加减)放在word文档里,并提交到教育在线系统。

(1)实现长度为2字的两个多精度数相减;

DATA SEGMENT
DATA1	DW 4743H,5331H	;表示数据9B958953H
DATA2	DW	5278H,9526H	;表示数据21341211H
RESULT	DW	2 DUP(?)	;存放多字节相减的结果
DATA ENDS
CODE SEGMENT
	ASSUME CS:CODE,DS:DATA
START:
	MOV	AX,DATA
	MOV	DS,AX
	MOV	AX,DATA1
	MOV	DX,DATA1+2
	SUB	AX,DATA2	;低字部分相减
	SBB	DX,DATA2+2	;高字部分带进位相减
	MOV	RESULT,AX	;存放低字部分相减结果
	MOV	RESULT+2,DX	;存放高字部分相减结果
CODE	ENDS
	END START

流程图:

 

(2)实现一个长度为3字的多精度数和一个长度为2字的多精度数相加减)

加法:

DATA SEGMENT
DATA1	DW	2356H,21A4H,1823H
DATA2	DW	3038H,4259H
RESULT	DW	2 DUP(?)
DATA ENDS
CODE SEGMENT
	ASSUME CS:CODE,DS:DATA
START:
	MOV	AX,DATA
	MOV DS,AX
	MOV AX,DATA1
	MOV DX,DATA1+2
	MOV BX,DATA1+4
	ADD AX,DATA2
	ADC DX,DATA2+2
	ADC BX,DATA2+4
	MOV RESULT,AX
	MOV RESULT+2,DX
	MOV RESULT+4,BX
CODE	ENDS
END	START

流程图:

减法:

DATA SEGMENT
DATA1	DW	2356H,21A4H,1823H
DATA2	DW	3038H,4259H
RESULT	DW	2 DUP(?)
DATA ENDS
CODE SEGMENT
	ASSUME CS:CODE,DS:DATA
START:
	MOV	AX,DATA
	MOV	DS,AX
	MOV	AX,DATA1
	MOV	DX,DATA1+2
	MOV	BX,DATA1+4
	ADD	AX,DATA2
	ADC	DX,DATA2+2
	ADC	BX,DATA2+4
	SUB	AX,DATA2
	SBB	DX,DATA2+2
	SBB	BX,DATA2+4
	MOV	RESULT,AX
	MOV	RESULT+2,DX
	MOV	RESULT+4,BX
CODE	ENDS
END	START

流程图:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值