能力值:
(RANK:300 )
|
-
-
2 楼
没有看懂楼主的问题
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
DEBUG下执行 在2000:0000地址A命令输入mov ax,1 add ax,ax jmp 2000:0003
后T或P命令执行后可观察到AX值的变化
第一次执行:1+1=2
二: 2+2=4
三:4+4=8
跳转2次实现2的3次方
那么跳转几次实现2的8次方
LZ试试
2000:0007处无需设置 应为2000:0005无条件跳转
|
能力值:
( LV2,RANK:10 )
|
-
-
4 楼
虽然没看懂,但支持一下
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
貌似我记得这是王爽汇编语言上的一道题
|
能力值:
( LV2,RANK:10 )
|
-
-
6 楼
的确是王爽里没按的 一道题。我按照3楼的指点做了,可是结果不一样,将结果传上,看问题出在哪里:
-a 2000:0000
2000:0000 mov ax,1
2000:0003 add ax,ax
2000:0005 jmp 2000:0003
2000:0007
-t
AX=0000 BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000
DS=1376 ES=1376 SS=1376 CS=1376 IP=0102 NV UP EI NG NZ NA PO NC
1376:0102 0000 ADD [BX+SI],AL DS:0000=CD
不知道执行T命令,显示的ax为什么没有变化
|
能力值:
( LV2,RANK:10 )
|
-
-
7 楼
这样不是无限循环啊
|
能力值:
( LV2,RANK:10 )
|
-
-
8 楼
哪应该怎么操作啊,请高人将过程贴出,好好学习下
|
能力值:
( LV2,RANK:10 )
|
-
-
9 楼
2000:0000 mov ecx,7
2000:0003 mov eax,2
2000:0006 add eax,eax
2000:0007 loop 2000:0006
很久没用DEBUG了
|
能力值:
( LV2,RANK:10 )
|
-
-
10 楼
可惜这是4条语句
|
能力值:
( LV2,RANK:10 )
|
-
-
11 楼
9楼的不符合题目的要求啊!难道汇编真的这么难吗?好多高手都倒了,呜呜呜
|
能力值:
( LV2,RANK:10 )
|
-
-
12 楼
如果说3条指令来算2的8次方,我想一定要用到循环指令吧
2000:0000 mov ecx,7 ;循环7次
2000:0003 mov eax,2 ;赋初值
2000:0006 add eax,eax ;计算
2000:0007 loop 2000:0006 ;判断ecx的值,如果不等于零 跳转
对与6楼的问题
在debug中使用-T时,应该注意cs:ip的值
如果没有指向程序内存单元,请用R来改变
至于3条指令搞定,等待大大的解答
|
能力值:
( LV2,RANK:10 )
|
-
-
13 楼
这是王爽汇编里的一道实验题,本来感觉应该是很基础的东西,只因为本人汇编学的差,才出来请教,没有想到这么复杂。对于12楼的答复不很满意,其距离题目的要求太远。其所说的“在debug中使用-T时,应该注意cs:ip的值”,是不是没有注意到指令中jmp 2000:0003就是将cs指定为2000,将ip指定为0003,已经实现了指令的循环,难道还需要再用r cs、r ip来改写段地址和偏移地址吗?期待高人解答!!!
|
能力值:
( LV2,RANK:10 )
|
-
-
14 楼
你注意一下我3楼的帖 我们是在2000:0000处执行的指令
你虽然修改了2000:0000-2000:0007之间的指令 但是你没有从2000:0000开始去执行指令
既然指令在2000:0000开始 应修改CS+IP
补充一句DEBUG下是WINDOW模拟的16位DOS 楼上各位将段寄存器看成32位的要出错
不能EAX
|
能力值:
( LV2,RANK:10 )
|
-
-
15 楼
14楼的看来比较专业,能把整个过程详细说一下吗?叫我们开开脑!!
|
能力值:
( LV2,RANK:10 )
|
-
-
16 楼
debug
-a
????:???? jmp 2000:0000
????:????
-a 2000:0000
2000:0000 mov ax,1
2000:0003 add ax,ax
2000:0005 jmp 2000:0003
2000:0007
T或P执行后 CS IP指向 2000:0000 实现修改CS+IP 实现方法很多
接下来实现的 大家试试
观察AX的值 注意AX的值是十六进制
|
能力值:
( LV2,RANK:10 )
|
-
-
17 楼
用a写好代码后
用r修改CS:IP的值指向你的代码地址
然后执行
|
|
|