鱼C论坛

 找回密码
 立即注册
查看: 3031|回复: 2

算术表达式运算

[复制链接]
发表于 2011-4-25 22:07:05 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
老师说课本这个程序还可以优化完善,不过我抓破头还是看不出来,请大家帮帮忙:
  1. assume ds:data,  cs:code

  2. data segment
  3.         x dw 200
  4.         y dw 300
  5.         z dw 4000
  6.         v dw 10000
  7.         w dw ?, ?
  8. data ends

  9. code segment
  10. start:
  11.         mov ax, data
  12.         mov ds, ax

  13.         mov ax, x           
  14.         imul y               ;multiply y

  15.         mov cx, ax
  16.         mov bx, dx
  17.                
  18.         mov ax, z
  19.         cwd
  20.                
  21.         add cx, ax
  22.         adc bx, dx           ;abc
  23.                
  24.         sub cx, 460
  25.         sbb bx, 0            ;sbb
  26.                
  27.         mov ax, v
  28.         cwd
  29.                
  30.         sub ax, cx
  31.         sbb dx, bx           ;sbb
  32.                
  33.         idiv x               ;idiv
  34.         mov w, ax
  35.         mov w+2, dx

  36.         mov ax, 4c00h
  37.         int 21h
  38. code ends

  39. end start
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-4-27 21:56:14 | 显示全部楼层
        mov ax, x           
        imul y               ;multiply y
        mov cx, ax
        mov bx, dx
        mov ax, z
        cwd
        add cx, ax
        adc bx, dx           ;abc
以上代码实现x*y+z,没必要非把z放入ax,再扩展再加吧
        mov ax, x           
        imul y               ;multiply y
        mov cx, z
        add ax,cx,
        adc dx,0
汇编放下一段时间了,不一定对,可以参考下

评分

参与人数 1荣誉 +2 收起 理由
loop + 2 热心回复,鱼C有你更精彩~

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2011-4-27 22:55:20 | 显示全部楼层
最后结果显示不知道怎么看,好像是错的。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-26 16:42

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表