汇编笔记8

                 add指令

汇编笔记8_第1张图片
图片发自App

           CPU中的栈机制


汇编笔记8_第2张图片
图片发自App

CPU提供栈作为内存空间,它具有以下特点

1.栈顶的段地址储存在SS中,偏移地址储存在SP中。SS:SP时刻指向栈顶元素。

2.push,pop指令的最小工作单位是字。

3.push(入栈)操作导致SP减小2个字节,pop(出栈)反之。

4.当出栈入栈操作导致栈顶位置在栈外时,push/pop操作会导致栈外空间数据被覆盖。

5.由于SP寄存器为16位,因而它储存的地址范围为0~2^16(64KB)。所以栈的空间最大为64KB。

汇编笔记8_第3张图片
图片发自App

     mov指令与push指令

1.mov指令和push指令都是CPU用来实现内存单元与寄存器间数据传递的手段。

2.mov指令中,由DS给出段地址,由IP给出偏移地址。push指令中,由SS给出段地址,SP给出偏移地址。

3.每次push指令执行时,都需要更改偏移地址(减二),而move指令则不需要。这么说吧,mov指令是快递员投递,只要把该送到哪家的信放进信筒就够了,而push指令是图书馆整理员,把书放到书架上时还要注意书的排列顺序。

汇编笔记8_第4张图片
图片发自App

如果改用push指令

汇编笔记8_第5张图片
图片发自App

你可能感兴趣的:(汇编笔记8)