爱问知识人 爱问教育 医院库

汇编急问

首页

汇编急问

输入两个16位十六进制数,输出此两数之和。例如,输入7FFF和8000,
则输出FFFF;输入FFFF和0002,则输出10001。

希望写出完整程序,lz刚入门,代码越简单越好!谢谢!

提交回答
好评回答
  • 2010-12-25 18:06:05
    你怎么老提问同样的问题,为了这10分,我再回答一遍:
    这两个数相加的结果大于16位,不能在一个16位寄存器中保存,因此要把这2个数看成32位的数 
    7fff=0000 7fff 
    8000=0000 8000 
    分别用2个16位寄存器保存 
    mov ax,7fff 
    mov bx,0000 
    mov cx,8000 
    mov dx,0000 
    然后先把低16位相加 
    add ax,cx ;(ax)=0001 
    再把高16位用进位加法相加 
    adc bx,dx ;(bx)=0001 
    最后结果保存在ax和bx中 
    ax保存结果的低16位0001 
    bx保存结果的高16位0001 
    合起来就是:0001 0001 
    

    海***

    2010-12-25 18:06:05

类似问题

换一换
  • 汇编语言 相关知识

  • 电脑网络技术
  • 电脑网络

相关推荐

正在加载...
最新问答 推荐信息 热门专题 热点推荐
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200

热点检索

  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
返回
顶部
帮助 意见
反馈

确定举报此问题

举报原因(必选):