永发信息网

汇编问题急啊,高手帮帮忙吧

答案:1  悬赏:0  手机版
解决时间 2021-05-01 06:05

DATA SEGMENT

W DW -304

X DW 1000

Y DW -12

Z DW 20

RESULT DW 2 DUP(?)

DATA ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DATA

START:MOV AX,DATA

MOV DS,AX

MOV AX,X ;被乘数X取到AX中

IMUL Y ;计算X*Y

MOV CX,AX

MOV BX,DX ;X*Y转存到BX、CX

MOV AX,Z ;Z取到AX中

CWD ;Z扩展到DX、AX中

ADD CX,AX

ADC BX,DX ;计算X*Y+Z

SUB BX,220 ;计算X*Y+Z-220

SBB BX,0

MOV AX,W ;W取到AX中

CWD ;扩展到DX、AX中

SUB AX,CX

SBB DX,BX ;计算W-(X*Y+Z-220)

IDIV X ;计算(W-(X*Y+Z-220))/X

MOV RESULT,AX

MOV RESULT+2,DX ;送结果

MOV AH,4CH

INT 21H ;返回DOS

CODE ENDS

END START

这是我编的已经给了初值的程序段,可是我们老师要求是用键盘输入这四个数然后在屏幕上显示,这比上面要复杂的多,关键是键盘输入要怎么转化为计算用到的值,然后重新转化为数的ASCII码输出呢?

键盘输入四个带符号数,完成(w-(x*y+z-220))/x的计算,将表达式的商和余数存入数据区 result单元开始的区域中,请帮忙编一个。

可不可以帮我完善一下上面的程序,或者另外编一个给我,我是个汇编的初学者,希望可以的话,在编程后面注明这个语句的用途,方便我看懂!高手帮帮忙吧,本人感激不禁!或许这道题在你眼里很简单,但是它却成为我学习的拦路虎。

最佳答案

这样写就搞定了!祝你成功!呵呵!


MOV AX,X ;被乘数X取到AX中


IMUL Y ;计算X*Y


MOV CX,AX


MOV BX,DX ;X*Y转存到BX、CX


MOV AX,Z ;Z取到AX中


CWD ;Z扩展到DX、AX中


ADD CX,AX


ADC BX,DX ;计算X*Y+Z


SUB BX,220 ;计算X*Y+Z-220


SBB BX,0


MOV AX,W ;W取到AX中


CWD ;扩展到DX、AX中

我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
这样是真爱吗
谁有这部电影的字幕 求求大家我已经没积分了
跨行网银转帐会不会退款
谁能介绍一下仙人掌?
如何登陆后的关闭声音
有胃痛的人应该要注意些什么?
庭湘·味在哪里啊,我有事要去这个地方
宝鸡哪有卖低筋面粉的
我的这个配置玩炫舞为什么会卡
开那些东西最容易弄暴风蓝图?在什么时间最容
哈尔滨地区的这些电脑配置价格谁知道?
QQ华夏林海副本
FP这个程序哪里错了?
绍兴有没有便宜点的动感地带套餐,带哪些内容
上海诺基亚手机维修点
推荐资讯
商业企业要交什么税,工业企业与商业企业的区
吃东西会吐怎么回事
怎么样才能把电脑里的垃圾清理干净?
谁呢帮我解梦呢?好可怕的梦。
男人最重要的东西是什么?
QQ幻想世界做的任务的经验怎么不显示屏幕上
怎么对付顽固的爸爸
为什么经验值不加?
腾讯游戏 什么时候DNF浙江1才可以转去上海3
山东10年几月份招兵 急急急!!!
宝宝不爱喝热的奶怎么办?
跪求松江十一中秋在的兼职有嘛?
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?