1.1 汇编语言基本结构模板
汇编语言的基本框架由这四部分组成,如果某个段没有代码,可以将与该段有关的代码删除。
1.2 8086 CPU简介
Intel8086是一个由Intel于1978年所设计的16位微处理器芯片,是x86架构的鼻祖。不久之后,Intel 就推出了 Intel 8088 (一个拥有8根外部数据总线的微处理器)。它是以8080和8085的设计为基础,拥有类似的寄存器组,但是数据总线扩充为16位。总线界面单元透过6字节预存的队列位指令给执行单元,所以取指令和执行是同步的,8086 CPU有20条地址线,可直接寻址1MB的存储空间,每一个存储单元可以存放一个字节的二进制信息。
1.2.1 8086引脚详解
(1)地址/数据复用AD0~AD15:双向三态门结构,采用分时的方法传送地址或数据的复用引脚。根据不同时钟周期的要求,决定当前是传送要访问的存储单元或I/O端口的低16位地址,还是传送16位数据,或是处于高阻状态;
(2)地址状态S3~S6:地址/状态信号,三态门,采用分时的方法传送地址或状态的复用引脚。其中A19~A16为20位地址总线的高4位地址,S6~S3是状态信号。S6表示CPU与总线连接的情况,S5指示当前中断允许标志IF的状态。S4,S3的代码组合用来指明当前正在使用的段寄存器。S4与S3的代码组合及对应段寄存器的情况;
(3)允许总线高8位数据传送/状态信号BHE/S7:输出三态,为总线高8位数据允许信号,当低电平有效时,表明在高8位数据总线D15 ~D8上传送1个字节的数据。S7为设备的状态信号;
(4)时钟脉冲输入端口CLK:用于输入工作脉冲,8086的脉冲为5MHz的方波信号;
(5)准备就绪信号READY:高电平有效;
(6)最大最小工作模式选择端MN/MX:高电平为最小工作模式,低电平为最大工作模式;
(7)读信号RD:低电平有效;
(8)等待测试控制信号TEST:输入,低电平有效。信号用来支持构成多处理器系统,实现8086 CPU与协处理器之间同步协调的功能,只有当CPU执行WAIT指令时才使用;
(9)可屏蔽中断请求信号INTR:高电平有效,8086 CPU在每条指令执行到最后一个时钟周期时,都要检测INTR引脚信号。INTR为高电平时,表明有I/O设备向CPU申请中断,若IF=1,CPU则会响应中断,停止当前的操作,为申请中断的I/O设备服务;
(10)非屏蔽中断请求信号NMI:高电平有效,当NMI引脚上有一个上升沿有效的触发信号时,表明CPU内部或I/O设备提出了非屏蔽的中断请求,CPU会在结束当前所执行的指令后,立即响应中断请求;
(11)复位信号RESET:高电平有效。RESET信号有效时,CPU立即结束现行操作,处于复位状态,初始化所有的内部寄存器。复位后各内部寄存器的状态,当RESET信号由高电平变为低电平时,CPU从FFFF0H地址开