大发体育娱乐在线-大发体育娱乐官方网站-大发体育娱乐登录网址
做最好的网站

关于逆向的一点儿小知识

来源:http://www.dfwstonefabricators.com 作者:编程应用 人气:76 发布时间:2019-09-23
摘要:bx、si、di 和 bp 在 8086CPU 中,独有那 4 个寄放器能够用在 “[...]”中来开展内部存款和储蓄器单元的寻址。 mov ax, [bx]mov ax, [bx+si]mov ax, [bx+di]mov ax, [bp]mov ax, [bp+si]mov ax, [bp+di] 而上面的下令

bx、si、di 和 bp

在 8086CPU 中,独有那 4 个寄放器能够用在 “[...]” 中来开展内部存款和储蓄器单元的寻址。

mov ax, [bx]mov ax, [bx+si]mov ax, [bx+di]mov ax, [bp]mov ax, [bp+si]mov ax, [bp+di]

而上面的下令是大错特错的

mov ax, [cx]mov ax, [ax]mov ax, [dx]mov ax, [ds]

那八个寄放器能够单个出现,或许以 4 种组合出现:bx 和 si,bx 和 di,bp 和 si,bp 和 di。

组合那条就相比好记上一条:只要在 [...] 中使用寄放器 bp,而下令中平昔不未有显式的给出段地址,那么段地址在 ss 中。因为只要在 [...] 中使用了存放器 bx,而下令中一贯不显式的给出段地址的话,段地址在 ds 中,所以不得以将 bx 和 bp 作为整合,而 si,di 作为 bx 和 bp 的帮忙寄放器,也无法独立将它俩放在一块儿。

上边的授命是错误的:

mov ax, [bx+bp]mov ax, [si+di]

内部存款和储蓄器寻址方式

   mov ax,[bx]

ax=[ds*10H+bx]

loop

 循环指令,循环次数由计数贮存器CX钦赐。是或不是实施循环体的论断指令在循环体之后,所以,至少实行1次循环体,即至少循环1次。试行LOOP指令时,CPU自动将CX的值减1,若CX=0,则结束循环;不然,重复推行循环体。

loop指令等价于C的do…while结构:

  cx =

巡回次数;

  do {

  //

循环体

  cx--;

  } while (cx);

结构:

1      start: mov ax, 2

 2             mov cx, 11

 3      s: addax, ax

 4             loop s

and , or 指令

and 与    &

or  或     |

xor  异或  ^

not  非    ~

内部存款和储蓄器寻址格局

图片 1

BP:基数指针寄放器      和储藏室指针SP联合使用,作为SP的校准

图片 2

图片 3

(1)在8086CPU中独有那八个存放器能够在[...]中张开内部存款和储蓄器单元的寻址。

例如,上边包车型地铁授命都以科学的:

mov ax,[bx]

mov ax,[bx+si]

mov ax,[bx+di]

mov ax,[bp]

mov ax,[bp+si]

mov ax,[bp+di]

而上边都以不当的:

mov ax,[cx]

mov ax,[ax]

mov ax,[dx]

mov ax,[ds]

(2).在[...]中,那五个存放器能够独立出现,大概只好以八种组成出现:bx和si、bx和di、bp和si、bp和di。

举个例子上边都是不利的

mov ax,[bx]

mov ax,[si]

mov ax,[di]

mov ax,[bp]

mov ax,[bx+si]

mov ax,[bx+di]

mov ax,[bp+si]

mpv ax,[bp+di]

mov ax,[bx+si+idata]

mov ax,[bx+si+idata]

mov ax,[bp+si+idata]

mov ax,[bp+di+idata]

下边正是错误的

mov ax,[bx+bp]

mov ax,[si+di]

(3)只要在[....]中行使寄放器bp,而下令汇总未有展示给出段地址,段地址就暗中同意在ss中。 比方下边包车型客车下令。

mov ax,[bp] 含义:(ax)=((ss)*16+(bp))

mov ax,[bp+idata] 含义:(ax)=((ss)*16+(bp)+idata)

mov ax,[bp+si] 含义:(ax)=((ss)*16+(bp)+(si))

mov ax,[bp+si+idata] 含义:(ax)=((ss)*16+(bp)+(si)+idata)

跳转指令和指令跳转原理

jmp指令

            jmp 地址      跳转到地址

call指令

图片 4

ret指令

图片 5

图片 6

mul指令

图片 7

MUL AB

乘法指令的成效是将A和B中三个无符号8位二进制数相乘,所得的二十个人积的低8位存于A中,高8位存于B中。若是乘积大于256,即高位B不为0,则OV置1;否则OV清0,CY总是清0。

例如:设(A)=50H(80),(B)=0A0H(160)

若执行MUL AB,

则实行结果为:

乘积为3200H(12800),

(A)=00H,(B)=32H,(OV)=1,(CY)=0

div指令

图片 8

本文由大发体育娱乐在线发布于编程应用,转载请注明出处:关于逆向的一点儿小知识

关键词:

上一篇:vue-select-lang

下一篇:没有了

频道精选

最火资讯