计算(x+3)/y*y的值(汇编语言)

计算多项式(x+3)/y*y 的值(汇编语言实现)

本题比较简单,主要是加法,乘法和除法的运算
注意除法的使用,使用前须将edx置0,除法使用后商在eax,余数在edx,想输出余数可自行操作。
乘法这里用到了imul,是因为这是双操作数乘法,三操作数乘法也是imul
实现代码

;计算(x+3)/y*y
include irvine32.inc
.data
num1 dd ?
num2 dd ?
.code
main proc
;x=ebx,y=ecx
	mov edx,0		
	call readint
	mov num1,eax		;读入数据x
	call readint		
	mov num2,eax		;读入数据y
	mov ebx,num1		;x放入ebx中
	mov ecx,num2		;y放入ecx中
	add ebx,3		    ;ebx=x+3
	imul ecx,ecx		;ecx=y*y
	mov eax,ebx		    ;eax=ebx=x+3
	div ecx			    ;eax/ecx=(x+3)/y*y
	call writeint
	exit
main endp
end main

运行结果
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值