操作符offset
操作符offset是取标号在程序段中的偏移地址。
jmp指令:
jmp指令有很多种用法。
2.
根据位移进行转移的jmp指令
jmp short 标号 (段内短转移,修改IP的范围为-128~127)
jmp near 标号 (段内近转移,修改IP的范围为-32768~32767)
3.
转移的目的地址在指令中的jmp指令
jmp far ptr 标号 (段间转移)
far ptr 指明了指令用标号的段地址和偏移地址修改cs和ip.
4.
转移地址在寄存器中的jmp指令
jmp 16位寄存器 ((IP)=(16位寄存器))
5.
转移地址在内存中的jmp指令
(1)jmp word ptr 内存单元地址(段内转移)
从内存单元中取一个字的数据,并用此修改ip的内容.
(2)jmp dword ptr 内存单元地址(段间转移)
从内存中取出两个字的数据,用高位的修改cs的值,低位的修改ip的值.
2.jcxz与loop
jcxz和loop都是有条件转移指令,并且有条件转移指令都是短转移,进行的是位移。修改IP的地址范围是-128~127.
第十章
call、ret、retf
ret修改ip
retf修改cs及ip
call修改ip或cs和ip
使用"call 标号"时,使用ret返回
使用"call far ptr 标号"时,使用retf返回。
call的使用形式与jmp大致一样。
call与jmp大致相同,但他多了一项功能,就是把当前ip或cs和ip的值入栈。这也是为何ret,retf与call配合使用的重要一点.
- [游客] wo lai le 12/23 18:50
- [tangxin] 非常有道理 03/06 09:23
- [游客] 现在学校的教学已经不是那么回事了,还是得靠自学。 06/04 12:13
- [assemblyeaten] 顶一下 05/11 10:48
- [游客] eg 05/04 15:55
- [hacker_ld] 哈哈哈!!好文章! 04/30 22:35
- [游客] 其实,很多女孩子也不想那么学,只因考试的时候要考概念,,,,怪谁呢 03/15 17:43
- [游客] 呵呵,,,,好,,,2012 08/25 10:35
- [asshuke] 说的很好,我等菜鸟奋起直追呀! 08/14 11:24
- [xuyanghui] 很好啊,对我很有用的,很经典,谢谢坐着啦. 04/11 18:05
- [游客] 千术揭密教学www.pwmhg.cn 马洪刚反赌www.puke56.cn 马洪刚千术揭秘w 06/07 10:57
- [游客] [url=http://www.gddzbq.com]深圳搬家公司[/url] [url=http 03/02 15:07
- [gecko] 自己给自己留句话! 做人,最怕懒惰,在如何事情上都一样!我不该过于贪图方便.这样的选择,不止我对自 08/25 13:36
- [游客] 您好好我是个超级菜鸟。看了博主的几篇肺腑之言我,深受触动。于是我,有个想法。报软考。最初级。。 请 06/01 14:24
- [Wednesday] 嘿嘿 03/10 15:14
- [游客] 从键盘输入两个数字字符,存入缓冲区。 把sh1内的字符转换为十六进制,存入sh2.从sh2读 01/11 20:29
- [游客] 从键盘输入两个数字字符,存入缓冲区。 把sh1内的字符转换为十六进制,存入sh2.从sh2读入 01/09 21:15
- [gocker] 我重新审视了自己的ID和博主的ID``偶发现,我们长得太像了。。。假使,如果``我的ID后门没有加上 12/21 23:03
- [happy] 不知gecko的意思是想说什么?摸不着头脑??? 12/20 13:11
- [Wednesday] 可以直接发消息给我 注意右上角的消息中心 哈哈 11/08 18:00