8086汇编学习笔记3-程序组织
来源:互联网 发布:淘宝导航栏分割线代码 编辑:程序博客网 时间:2024/06/06 13:58
1. 关于段地址和偏移地址
8086CPU有20位地址总线,达到1MB寻址能力,但是8086CPU又是16位结构CPU,一个寄存器只能存16位数据。所以8086用两个寄存器来表示一个20位的物理地址,一个称为段地址,一个称为偏移地址,然后由地址加法器将两个16位地址合成一个20位的物理地址。地址加法器计算物理地址公式:
物理地址=段地址*16+偏移地址
2. CS寄存器用来存放代码段段地址,IP为指令指针寄存器,任意时刻,8086CPU将CS:IP指向的内容当作指令来执行。读取一条指令后,IP中的值自动增加。
不能用mov指令来修改CS、IP寄存器的值,能够改变CS、IP值的指令统称为转移指令。
编程时,可以根据需要,将一段地址连续,起始地址为16倍数内存单元用来存放代码,这段内存空间称为代码段。
3. DS寄存器,用来存放要访问数据段的段地址。
在编程时,可根据需要,将一段地址连续、起始地址为16的倍数的内存单元用来存放数据,这段内存空间可以称为数据段。
4. 栈顶段地址存放在寄存器SS中,偏移地址存放在SP中,即任意时刻,SS:SP指向栈顶元素。
在编程时,可根据需要,将一段地址连续、起始地址为16的倍数的内存单元当作栈空间来用,这段内存空间可以称为栈。
- 8086汇编学习笔记3-程序组织
- 汇编--学习笔记(五)-组织数据
- Python学习笔记 之 Python程序组织
- 汇编学习笔记【3】
- 汇编学习笔记--包含多个段的程序
- 汇编--学习笔记(十)-分支程序
- Accelerated C++学习笔记5—<组织程序和数据>
- win32汇编学习笔记3
- 汇编学习笔记(3)
- 汇编学习笔记:第一个程序,Hello World!!!
- [汇编学习笔记][第六章包含多个段的程序]
- 汇编--学习笔记(十三)-中断及中断处理程序
- 汇编基础程序学习
- 组织行为学(学习笔记)
- F# 学习之路(3) 如何组织程序(上)
- F#学习之路(3) 如何组织程序(下)
- 如何用汇编编写程序——汇编学习笔记(五)
- 8086汇编学习笔记1-基础
- 在Linux上开发Android,装手机驱动
- JavaWEB开发-国际化:
- 8086汇编学习笔记1-基础
- 第二章 构造和运行模块(1)
- 8086汇编学习笔记2-寄存器
- 8086汇编学习笔记3-程序组织
- VS 03 05 08 找不到一个或多个组件的解决方法
- Linux rpm 提示安装成功,可是查询的时候发现没有软件列表
- Flash常见问题与解答
- 8086汇编学习笔记4-指令
- 8086汇编学习笔记5-伪指令
- 常用的正则表达式(带说明)
- 最大限度的提高Domino下的运行速度(网上总结)
- 8086汇编学习笔记6-寻址方式