1、8086CPU不支持将数据直接送入段寄存器,需要按照下面方式:数据——》通用寄存器——》段寄存器。

2、mov指令的几种形式:

  mov 寄存器,数据

  mov 寄存器,寄存器

  mov 寄存器,内存单元        mov ax,[0]   将段地址为DS,偏移地址为0的数据存到ax寄存器里。

  mov 内存单元,寄存器  mov [0],ax  将ax寄存器里的数据存储到段地址为DS,偏移地址为0的内存地址。 

  mov 段寄存器,寄存器

  mov 寄存器,段寄存器

3、mov、add、sub是具有两个操作对象的指令,jmp只有一个操作对象。

4、入栈和出栈指令:

  push ax :将寄存器ax中的数据送入栈中

  pop ax :从栈顶取出数据送入ax

  ps:8086CPU的入栈和出栈操作都是以字为单位进行的。

5、8086CPU中,有两个寄存器与栈有关:

  段寄存器ss  存放栈顶的段地址

  寄存器sp  存放栈顶的偏移地址

  ps:任意时刻,SS:SP指向栈顶元素。push : sp=sp-2, pop: sp=sp+2

当栈里元素为空的时候,sp指向空间最高地址单元的下个单元。

6、字型数据用两个单元存放,高地址放高8位,低地址放低8位。

7、将10000H~1000FH这段空间当做栈,初始状态为空,设置AX=001AH,BX=001BH,将AX,BX中的数据入栈,然后将AX,BX清零,从栈中恢复AX,BX原本的内容。(注:main函数调用方法)

  mov ax,1000         初始化栈顶

  mov ss,ax              初始化栈顶

  mov sp,0010     初始化栈顶  

  mov ax,001A

  mov bx,001B

  push ax

  push bx

  mov ax,0

  mov bx,0

  pop bx

  pop ax

最新文章

  1. 作业三(代码规范、代码复审、PSP)
  2. CSS 笔记五(Combinators/Pseudo-classes/Pseudo-elements)
  3. 保留json字符串中文的函数,代替json_encode
  4. NodeJS系列~目录
  5. python sklearn.linear_model.LinearRegression.score
  6. [转帖]音响及DarBee
  7. 安装weblogic的步骤10.3.0.0
  8. C#数字类型及运算符
  9. Log4Net不同日志类型写入到不同文件
  10. maven安装与环境变量配置
  11. 通过mysqlbinlog 恢复数据
  12. centos6.5安装nginx+python+uwsgi+django
  13. 【原】git常用命令笔记
  14. 浏览器通知--window.Notification
  15. 《mysql从入门到精通》提高
  16. MySql(六)单表查询
  17. WPF Demo511 控件共用事件
  18. BZOJ 1227 [SDOI2009]虔诚的墓主人 - 扫描线
  19. ubuntu -- 安装最新版的nodejs
  20. mvc模拟实现

热门文章

  1. Activity间通过Intent交互及系统服务调用
  2. bind的模拟实现
  3. 细说Unicode(一) Unicode初认识
  4. mysql关键字--设计表时要避开,否则回报语法错误
  5. 协程 和 async await
  6. A* 第k短路
  7. [Algorithm] 136. Single Number
  8. MongoDB 大数据技术之mongodb中在嵌套子文档的文档上面建立索引
  9. 使用Maven创建一个普通java项目
  10. 解决IDEA中maven导入jar包