第三章 寄存器(内存访问)

基础知识

  内存以字节为单位,划分为若干个单元。字节(8bit)、字(16bit)、双字(32bit)、四字(54bit)。

字数据在内存中的存储

  字数据的低位字节存放在低地址内存单元; 字数据的高位字节存放在高地址内存单元;

DS和【address】

  8086CPU中有一个DS寄存器,通常用来储存要放的数据的段地址;“[...]”表示一个内存单元,“[...]”中的数表示内存单元的偏移地址。但8086CPU不支持将数据直接送入段地址的方法,只能先送入一个一般的寄存器。

mov指令的注意点

  两个内存单元之间不能直接传送数据。不能使用mov指令修改CS和IP的值。 两个段寄存器之间不能直接传送;不能把常数送到段寄存器。

add、sub指令注意点

  操作数不能同时是内存单元,段寄存器。

栈的基础知识

  栈的特性: 后进先出,以字为存取单位。栈顶: 最后入栈的字数据所对应的地址单元 栈底: 固定的一端,栈区最高地址单元的前一个单元。

   栈: 用作数据段时,要把段地址→DS 用作栈段时,要把段地址→SS,栈顶偏移地址 → SP 用作代码段时,段地址→CS,要取的指令偏移地址→IP。但CS和IP的值不能使用mov改变。在8086CPU中,每个段的最大长度不能超过64KB。 (因为寄存器是16位的,能表示的地址范围只能是0000H~FFFFH,即0~216-1)。

   

posted @ 2018-12-17 21:59  幻想字谜  阅读(169)  评论(0)    收藏  举报