_________ 发表于 2012-1-17 14:51:28

实验题2的8次方怎么写

作业中要求 从2000:0开始写如3条指令
mov ax,1
add ax,ax
jmp 2000:0003
要怎么作

lsgo 发表于 2012-1-17 15:38:16

-A 2000:0
在 2000:0000 单元处写入代码
然后更改 CS:IP 指向2000:0000远行代码什么更改 CS:IP 我忘了 好久没去看汇编了

seuer126 发表于 2012-1-17 16:29:18

-a2000:0
mov ax, 2
mov cx,8
s: add ax,ax
   loop s

seuer126 发表于 2012-1-17 16:40:24

lsgo 发表于 2012-1-17 15:38 static/image/common/back.gif
-A 2000:0
在 2000:0000 单元处写入代码
然后更改 CS:IP 指向2000:0000远行代码什么更改 CS:IP...

-r cs就可以了

零ぃ 发表于 2012-1-18 18:22:18

第一次回答别人的问题
mov ax,1
add ax,ax
jmp 2000:0003
CS指2000 ip指0
用T一直运行跳上去 自加循环

事事如意 发表于 2012-1-19 17:54:05

-a2000:0
mov ax, 2
mov cx,8
s: add ax,ax
   loop s
这个是用cx作为循环条件的,而人家问的是用jump 指令来实现。

事事如意 发表于 2012-1-19 17:58:08

-a2000:0
mov ax, 2
mov cx,8
s: add ax,ax
   cmp cx,1
   jes
这样可以不??
老长时间没去复习了,有许多东西都遗忘了。唉,最近在家里忙着学习解密系列,一直没拿出时间来复习。
请高手指点,本人实际上很菜。还望各位大侠不要笑话俺。

事事如意 发表于 2012-1-19 18:01:12

错了错了,上面我打错了。重新写吧。对不起大家,占大家眼球了。
-a2000:0
mov ax, 2
mov cx,8
s: add ax,ax
   sub cx,1
   cmp cx,1
    jes

事事如意 发表于 2012-1-19 18:11:45

解释一下:sub cx,1让cx 自减1
               cmp cx,1让减1后的cx与1进行比较,这个命令仅会影响到标志寄存ZF的值,若比较结果为0,则ZF位的值为0,这个值对下面的指令有影响
          jnes意思是说,如果标志寄存器的值不为0,刚跳转到S处继续执行。若为0则直接进行下面指令的执行。上面的代码又出错了,应该把最后的一条指令je s改为jne s
由于,我很菜,老是出错,还没出道儿就这样,请大家原谅,占用大家过多的眼球了。哈哈~不过我也学学小甲鱼老师,有错必改,下次,我会尽量少出错儿。还有,我对大家的心是诚的,一心一意想帮助大家,一心一意想把鱼C做好。呵呵~~请各位大侠批评指正,我绝不会抬头的,态度极度诚恳。
页: [1]
查看完整版本: 实验题2的8次方怎么写