当前位置: 代码迷 >> 汇编语言 >> 汇编四则运算 求代码解决方法
  详细解决方案

汇编四则运算 求代码解决方法

热度:9841   发布时间:2013-02-26 00:00:00.0
汇编四则运算 求代码
计算表达式   (a*b+c*d)/e的值,并输出
其中数据data   segment  
                a   dw   5
                b   dw   6
                c   dw   20
                d   dw   8
                e   dw   5


------解决方案--------------------------------------------------------
mov ax,a
mov cx,b
mul cx
push ax

mov ax,c
mov cx,d
mul cx

pop bx
sub bx,ax

mov ax,bx
mov cx,e
div cx
------解决方案--------------------------------------------------------
;****************************************************
; 程序功能:计算表达式 (a*b+c*d)/e的值,并输出
;****************************************************

DATAS SEGMENT
a dw 5
b dw 6
f dw 20 ;注: 'c '可能是保留字,编译无法通过,故此用f代替
d dw 8
e dw 5
DATAS ENDS

STACKS SEGMENT
;此处输入堆栈段代码
STACKS ENDS

CODES SEGMENT
ASSUME CS:CODES,DS:DATAS,SS:STACKS
START:

MOV AX,DATAS
MOV DS,AX

MOV AX,a
MUL b ;计算a*b,结果在DX,AX中
mov a,AX
MOV b,DX ;转储结果

MOV AX,f ;计算c*d,结果在DX,AX中
MUL d
ADD AX,a ;计算a*b+c*d
ADC DX,b

DIV e ;计算(a*b+c*d)/e,商在AX中,余数在DX中

MOV AH,4CH
INT 21H
CODES ENDS
END START

字符显示工作你自己完成吧!
  相关解决方案