永发信息网

汇编新手问题#

答案:5  悬赏:60  手机版
解决时间 2021-05-17 21:49
  • 提问者网友:嗝是迷路的屁
  • 2021-05-17 03:32

mov ax,1

add ax,ax

jmp 2000,0003

这句话问什么能实现计算

2的8次方呢????

最佳答案
  • 五星知识达人网友:行雁书
  • 2021-05-17 05:09

mov ax,1;往AX送入1


add ax,ax;AX和AX相加


jmp 2000,0003;这步我想是转到mov ax,1哪儿的!


至于为什么能计算2的8次方?


答:主要是因为第add ,ax,ax.因为:
ax+ax=2
ax+ax=4
ax+ax=8


注意!按照你上面的程序是没法计算2的8次方的!因为jmp 2000,0003是无条件转移指令!你可以用loop 与CX想配合!CX送入2的多少次方!


全部回答
  • 1楼网友:蓝房子
  • 2021-05-17 08:59

“jmp 2000,0003”是debug里的,在源程序里不会这么写,你能把源程序贴出来看看么

  • 2楼网友:蕴藏春秋
  • 2021-05-17 08:25
光这句话不能,除非是自己定的语言。
  • 3楼网友:不甚了了
  • 2021-05-17 07:25
mov ax, 1 next: mov cx, 3 add ax, ax loop next 估计是这样吧, ax=1 ax+ax=1+1=2 ax+ax=2+2=4 ax+ax=4+4=8
  • 4楼网友:梦中风几里
  • 2021-05-17 05:46

楼上的程序有点点错误,mov cx,3 应该在循环体外面

mov ax, 1 mov cx, 3

next: add ax, ax loop next

要计算2的8次方只需要cx里面存8就可以了。

最后说一句,jmp 2000,0003必须是你程序地址一定的情况下才能用

所以我也认为你这段代码是在debug里面弄出来的

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯