. : : Assembly Language : : .  |  首页  |  我提出的问题  |  我参与的问题  |  我的收藏  |  消息中心   |  游客  登录  | 
提问 | 未解决 | 已解决 | 精华区 | 搜索 |
  《汇编语言》论坛 ->转移指令的原理
主题 : :  8位位移=标号处的地址-JMP指令后第一个字节的地址,这个“8位位移”具体是什么含义?  [待解决] 回复[ 5次 ]   点击[ 594次 ]  
ycxdtdz
[帖 主] [ 发表时间:2012-08-11 15:10 ] 
荣誉值:0
信誉值:0
注册日期:2011-12-11 10:36
8位位移=标号处的地址-JMP指令后第一个字节的地址,这个“8位位移”具体是什么含义?4
hky987654321
[第4楼] [ 回复时间:2013-08-04 23:52 ] 
荣誉值:26
信誉值:0
注册日期:2013-07-15 09:25
“8位位移”出现得确实突兀。
先不讲位移。“8位”就是“字节范围”的意思。可以这样理解,字节由8个2进制位组成,每个2进制位有0和1两种状态,因此,以字节为范围,包含的2进制位共有256个组合,即从8个0000 0000至8个1111 1111,用16进制数表示为从00H ~ FFH。
“8位位移”就是以jmp处的“内存地址”为原点0,在其上下,共256个地址的范围内cs:ip发生的位置移动。当cs:ip移向地址编码小于jmp处时,则位移为负值[-128~0),用补码表示这些负值;当移向地址编码大于jmp处时,位移为正数(0~127],用原码表示这些数。
需要登录后才能回帖 -->> 请单击此处登录
    Copyright © 2006-2024   ASMEDU.NET  All Rights Reserved