(x+y*(z-100)/300)/a 都是有符号数,都是16位数,要考虑进位 请问这个怎么做做?

崔鹏飞 2008-03-13 04:20:44
(x+y*(z-100)/300)/a 都是有符号数,都是16位数,要考虑进位 请问这个怎么做做?
...全文
98 10 打赏 收藏 举报
写回复
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
雨落风 2008-03-16
  • 打赏
  • 举报
回复
data segment
xxx dw 300
yyy dw 300
zzz dw 200
a dw 400
bbb dw 100
ccc dw 300
eee dd ?
data ends
code segment
assume cs:code,ds:data
start:mov ax,data
mov ds,ax
mov ax,zzz
sub ax,bbb
imul yyy
sub dx,0
idiv ccc
mov cx,ax
sub dx,dx
add cx,xxx
adc dx,0
mov ax,cx
sub dx,0
idiv a

mov word ptr eee,ax
mov word ptr eee+2,dx

mov ah,4ch
int 21h
code ends
end start
雨落风 2008-03-16
  • 打赏
  • 举报
回复
上面的代码好像有溢出错误.....>!
zhaoyi2115 2008-03-14
  • 打赏
  • 举报
回复
MOV AX,Z
SBB AX,100; Z-100
MOV BX,Y
IMUL BX; Y*(Z-100),结果高位在 DX,低位在 AX 中
MOV BX,300;
IDIV BX;Y*(Z-100)/300 商在 AX ,余数在 DX
MOV BX,X;
CLC ;清除 CF
ADD AX,BX;可能有进位 CF
XOR DX,DX;清除 DX
ADC DX,0;加上进位,完成 X+Y*(Z-100)/300
MOV BX,a;
IDIV BX;完成整个运算,商在 AX ,余数在 DX
崔鹏飞 2008-03-14
  • 打赏
  • 举报
回复
不好意思,何谓tc?
BMCRNET 2008-03-13
  • 打赏
  • 举报
回复
楼上正解

:)

zhaoyi2115 2008-03-13
  • 打赏
  • 举报
回复
MOV AX,Y;
MOV BX,Z;
SBB BX,100; Z - 100
IMUL AX,BX; Y*(Z-100) RESULT:DX AX
MOV Bx,300;
IDIV BX; Y*(z-100)/300 余数在 DX 中,商在 AX 中
MOV DX,0
ADD AX,X; 可能有进位
ADC DX,0; 加上进位
MOV BX,a;
IDIV BX; 结果在 AX 中
zhaoyi2115 2008-03-13
  • 打赏
  • 举报
回复
MOV AX,Y;
MOV BX,Z;
SBB BX,100; Z - 100
IMUL AX,BX; Y*(Z-100) RESULT:DX AX
MOV Bx,300;
IDIV BX; Y*(z-100)/300 余数在 DX 中,商在 AX 中
MOV DX,0
ADD AX,X; 可能有进位
ADC DX,0; 加上进位
MOV BX,a;
IDIV BX; 结果在 AX 中
zhaoyi2115 2008-03-13
  • 打赏
  • 举报
回复
MOV AX,Y;
MOV BX,Z;
SBB BX,100; Z - 100
IMUL AX,BX; Y*(Z-100) RESULT:DX AX
MOV Bx,300;
IDIV BX; Y*(z-100)/300 余数在 DX 中,商在 AX 中
MOV DX,0
ADD AX,X; 可能有进位
ADC DX,0; 加上进位
MOV BX,a;
IDIV BX; 结果在 AX 中
zhaoyi2115 2008-03-13
  • 打赏
  • 举报
回复
MOV AX,Y;
MOV BX,Z;
SBB BX,100; Z - 100
IMUL AX,BX; Y*(Z-100) RESULT:DX AX
MOV Bx,300;
IDIV BX; Y*(z-100)/300 余数在 DX 中,商在 AX 中
MOV DX,0
ADD AX,X; 可能有进位
ADC DX,0; 加上进位
MOV BX,a;
IDIV BX; 结果在 AX 中
智能卡_Snooper 2008-03-13
  • 打赏
  • 举报
回复
用TC写一个,然后反汇编吧,那个简单一些。
相关推荐
发帖
汇编语言

2.1w+

社区成员

汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
帖子事件
创建了帖子
2008-03-13 04:20
社区公告
暂无公告