




文档简介
1 第一章 微型计算机基础 计算机中的数制和码制 n数制 多位数码中每一位的构成方法以 及从低位到高位的进位规则称为数制 如 二进制 八进制 十进制 十六 进制等 n码制 用数码表示不同的事物时 所遵 循的编制代码规则称为码制 如 机器码中的原码 反码 补码 BCD码等 2 第一章 微型计算机基础 举例 n二进制 0和1 111 11 2 1 22 1 21 1 20 1 2 1 1 2 2 7 75 10 11B 用后缀B表示二进制 整整数数 纯纯小小数数分分别别计计算算 再再合合并并 n十六进制 0 9 A F 32 16 3 161 2 160 50 10 32H 用后缀H表示十六进制 注意 十六进制第一个是字母时 前面加0表示 如 EFH通常表示为 0EFH 3 第一章 微型计算机基础 数制转换 n二进制 n八进制 n十进制 n十六进制 以上4种数制之间的相互转换 4 第一章 微型计算机基础 二进制数的逻辑运算 n 与 运算 AND 用 表示 都为1时 结果为1 应用 快速得到网络标识 n 或 运算 OR 用 表示 只要有一个为1 结果为1 应用 置位 n 非 运算 NOT 取反 n 异或 运算 XOR 用 表示 0不变 1取反 应用 位开关 自清零 注意 逻辑运算是按位进行 没有进位 5 第一章 微型计算机基础 数的编码 1 无符号数 1 10 0 1 10 0 1 11 1 1 10 0 1 1 0 0 1 1 0 0 1 1 1 1 1 10 0 十进制 174 十六进制 0AEH 2 BCD 码 符号位 0表示正号 1表示负号 3 带符号数 3456 0011 0100 0101 0110 BCD 十进制 46 6 第一章 微型计算机基础 原码 反码 补码 n为什么要引入码制 原码 将数的真值形式中的正正负负号号用数码0或1表示的 机器数叫做数的原码形式 简称原码 1 1 0 01 10 01 11 11 10 0 反码 对负数的原码除符符号号位位外 按位求反 则可得 到负数的另一种表示法 即反码表示法 简称反码 1 10 01 10 01 11 11 10 0 1 10 01 10 01 11 11 10 0 原码 反码 补码 二进制负数的反码加1 就成为补码 1 1 0 0 1 1 0 0 1 1 1 1 1 10 0 1 1 0 0 1 1 0 0 1 1 1 1 1 10 0 原码 反码 1 1 1 1 0 0 1 1 0 0 0 0 1 10 0 补码 1 11 10 01 10 00 00 01 1 1 1 1 1 0 0 1 1 0 0 0 0 0 01 1 1 7 第一章 微型计算机基础 字符的编码 nASCII 编码 美国标准信息交换 码 它使用七位二进制编码来表示 一个符号 由于用七位码来表示一 个符号 故该编码方案中共有128个 符号 27 128 符符号号二二进进制制表表示示十十六六进进制制表表示示 A0100000141 a110000161 END 8 第一章 微型计算机基础 微型计算机系统 微型计算机系统的三个层次 微处理器 v严格讲 微处理器 CPU 中央处理器 vCPU由算术逻辑部件 ALU 和控制部件两大主要 部分组成 实现运算功能和控制功能 控制器 寄寄存存器器组组 ALU CPU v微处理器 算术逻辑部件 控制部件 存储器 一组寄存器 Registers 和高速缓冲存储器 Cache 集成封装才被称为微处理器 9 第一章 微型计算机基础 微型计算机系统的三个层次 微处理器 微型计算机 微型计算机系统 微微处处理理器器 存储器 I O接口 总线 硬 件 软 件 微微型型 计计算算机机 系系统统 微微型型 计计算算机机 外 设 ALU 寄存器 控制部件 键盘 鼠标 显示器 软驱 硬盘 光驱 打印机 扫描仪 系统软件 应用软件 10 第一章 微型计算机基础 总线结构 总线 连接多个功能部件的一组公共信号线 三总线 数据总线 地址总线 控制总线 地地址址总总线线 A AB B 存 储 器 I O 接 口 数据总线 DB 控控制制总总线线 C CB B 输入 输 出设备 微 处 理 器 11 第一章 微型计算机基础 微型计算机的结构 三总线 地址总线AB 用来传送CPU输出的地址信号 确定被访问的存储单元 I O端口 地址总线的宽度决定微处理器的寻址能力 数据总线DB 用来在CPU与存储器 I O接口之 间进行数据传送 数据总线的宽度决定微处理器一次最多可以 传送的数据宽度 控制总线CB 用来传送各种控制信号 12 第一章 微型计算机基础 微处理器内部结构 n执行部件 运算器 通用寄存器 EU控制单元 n总线接口部件 指令队列缓冲器 16位指令指针寄存器 地址加法器和段寄存器 总线控制逻辑 13 第一章 微型计算机基础 8086的寄存器结构 n通用寄存器组 n段寄存器 n状态标志寄存器F n指令指针寄存器 14 第一章 微型计算机基础 标志寄存器 n记录了算术和逻辑运算结果的一些特征 进位标志位CF 零标志位ZF 符号标志位SF 中断允许标志位IF 方向标志位DF 溢出标志位OF 0000OFDFIFTFSFZF0AF0PF0CF 15870 15 第一章 微型计算机基础 数据在内存储器的存放顺序 n最低地址也就是最低字节数的地址 数值 1FA6322B456874C03112h 1 12 2H H 3 31 1H H C C0 0H H 7 74 4H H 6 68 8H H 4 45 5H H 2 2B BH H 3 32 2H H A A6 6H H 1 1F FH H 0 00 0H H 0 01 1H H 0 02 2H H 0 03 3H H 0 05 5H H 0 04 4H H 0 06 6H H 0 07 7H H 0 09 9H H 0 08 8H H 低地址 高地址 16 第一章 微型计算机基础 存储器组织 n节 n段 n物理地址 n逻辑地址 n线性地址 0 00 0h h 0 01 1h h 0 02 2h h 0 03 3h h 0 04 4h h 0 05 5h h 0 06 6h h 0 07 7h h 0 08 8h h 0 09 9h h 0 0A Ah h 0 0B Bh h 0 0C Ch h 0 0D Dh h 0 0E Eh h 0 0F Fh h 1 10 0h h 1 11 1h h 1 12 2h h 1 13 3h h 1 14 4h h 1 15 5h h 一节 A段 B段 C段 存储器 存储器 段的位置 17 第一章 微型计算机基础 存储器组织 n实际地址和逻辑地址 18 第一章 微型计算机基础 存储器组织 n堆栈 19 第一章 微型计算机基础 I O端口及编址 nI O端口 nI O端口编址方式 n存储器映象编址的I O n独立编址的I O 20 第一章 微型计算机基础 微型计算机的工作原理 程序由指令序列组成 执行程序的过程 就 是执行指令序列的过程 即逐条地从存储器 中取出指令并完成指令所指定的操作 执行指令 取指译码执行 三个基本步骤 直到遇到停机指令时才结束 机器的运行 21 第一章 微型计算机基础 第2章 微型计算机指令系统 操作码操作数或操作数地址 执行某种操作的命令 操作命令的内容或对象 ROUT PUSH BP 保存BP 操作码 压栈 操作数 BP寄存器 注释 标号 1 基本格式 22 第一章 微型计算机基础 指令编译 1011000 00000001MMO OV V A AL L 1 1 机器指令 二进制码 符号指令 汇编语言 编译 连接 编译 连接 23 第一章 微型计算机基础 寻址方式 寻址方式 寻找指令中操作数来源的方式 操作码操作数或操作数地址 包含在指令中 在存储器中在寄存器中在寄存器中在寄存器中 在存储器中 在存储器中 包含在指令中 包含在指令中 24 第一章 微型计算机基础 立即寻址 MOVAX 2050h AHAL AX 代 码 段 操操作作码码 高地址 低地址 50h 20h 执行前执行后40h10h 20h50h 25 第一章 微型计算机基础 寄存器寻址 操操作作数数包包含含在在指指令令规规定定的的8 8位位 1 16 6位位 3 32 2位位寄寄存存器器中中 MMO OV V D DS S A AX X 10h40h20h50h20h50h DSAX 源操作数 目的操作数 注意 执行指令后 源操作数的内容不会改变 26 第一章 微型计算机基础 存储器寻址 实模式下 X86系列处理器对内存采用分段式管理 程序员在指令 中使用的是逻辑地址 逻辑地址由两部分组成 存储单元所在段 的基地址 段内偏移地址 偏移量 段的基地址一般由操作系统将程序装入内存时设置 程序员在编程 时主要使用段内偏移地址 段内偏移地址也称为有效地址 EA MOV ES 3000H AL ES 称为段超越前缀 可选 指示处理器访问哪个逻辑段 3000H为段内偏移地址 有效地址 27 第一章 微型计算机基础 有效地址 EA n段内偏移地址也称为有效地址 EA 基址寄存器 变址寄存器 比例因子 位移量 32位寻址 基址寄存器 BX BP变址寄存器 SI DI 比例因子 2 4 8 16位为1 位移量 8 16位 可由以下四部分组成 n基址寄存器内容 n变址寄存器内容 n比例因子 n位移量 2000 0000h 20000h 21000h 偏移量 1000h 有效地 址 物理地址逻辑地址 2000 1000h 28 第一章 微型计算机基础 物理地址 n物理地址 PA PA 段首地址 16 偏移地址 MOVAX 1000h DS 2 0 0 0 0 1 0 0 0 2 1 0 0 0 AX42C3 注意 当前段寄存器 可以使用前缀表示段超越 如 MOV AX ES 1000h 2000 0000h 20000h 21000h 偏移量 1000h 物理地址逻辑地址 2000 1000h C C3 3 4 42 2 29 第一章 微型计算机基础 2000 0000h 20000h 21000h 偏移量 1000h 物理地址逻辑地址 2000 1000h C C3 3 4 42 2 1 直接寻址 PA 16 段首地址 nn MOV AX 1000h DS 2 0 0 0 0 1 0 0 0 2 1 0 0 0 AX42C3 注意 用方括 号表示偏移量 30 第一章 微型计算机基础 偏移量存放在 寄存器 2000 0000h 20000h 21000h 偏移量 1000h 物理地址逻辑地址 2000 1000h C C3 3 4 42 2 2 寄存器间接寻址 DS 2 0 0 0 0 SI1 0 0 0 2 1 0 0 0 AX42C3 BX PA 16 段首地址 SI DI MOV AX SI 31 第一章 微型计算机基础 段首地址 3 寄存器相对寻址 段首地址 EA 基址 位移量 基址存放于 BX SI DI BP寄存器中 BX PA 16 DS SI 位移量 DI PA 16 SS BP 位移量 MOV AX SI 3000h 位移量3000h DS SI 32 第一章 微型计算机基础 应用 数组的寄存器相对寻址方式 MMO OV V A AX X S SI I 3 30 00 00 0h h 源变地址寄存器 位移量 DS SI 33 第一章 微型计算机基础 4 基址变址寻址 基址加变址寻址主要用于二维数组操作和表格 EA 基址寄存器 变址寄存器 基址寄存器 MMO OV V A AX X B BX X S SI I 单元 0 0 单元 0 1 单元 0 n 单元 1 0 单元 1 n 单元 1 1 单元 m n 变址寄存器 34 第一章 微型计算机基础 5 相对的基址变址寻址 基址加变址寻址主要用于二维数组操作和二重循环 EA 基址寄存器 变址寄存器 位移量 MOV AX BX SI 100h 单元 0 0 单元 0 1 单元 0 n 单元 1 0 单元 1 n 单元 1 1 单元 m n 位移量 基址寄存器 变址寄存器 位移量是段首到数组头部的距离 基址寄存器存放维数的位置 变址寄存器存放个数的位置 35 第一章 微型计算机基础 数据传送指令 1 数据传送指令 执行后不影响标志位 1 通用数据传送指令 格式 MOV 目标操作数 源操作数 注意 源操作数不变 目标操作数源操作数 立即数立即数 寄存器寄存器 存储器存储器 CS 段寄存器 立即数 36 第一章 微型计算机基础 通用数据传送指令二 格式 XCHG 目标操作数 源操作数 例 XCHG AX SI 0400h 存储器存储器 6A28hAX 存储器 25C7h SI 0400h 6A28h 25C7h 37 第一章 微型计算机基础 通用数据传送指令三 格式 XLAT 表头变量名 查表指令 用来取表中某指定数的值 TABLE DB 30h 31h 32h 33h 34h 35h 36h 37h 38h 39h MOV BX OFFSET TABLE MOV AL 5h XLAT TABLE DS 存储器 TABLE 30h 31h 32h 33h 34h 35h BX AL AL35h 38 第一章 微型计算机基础 数据传送操作指令 堆栈操作指令 格式 PUSH 源操作数 POP源操作数 注意 对字操作 源操作数 隐含目标操作数 堆栈段 SP 寄存器 存储器 字节操作数 当前栈顶指 针 39 第一章 微型计算机基础 压栈操作 PUSH AX PUSH BX PUSH CX PUSH DX SS堆栈段 存储器 3 30 02 23 3h h 2 20 00 01 1h h 3 30 00 00 0h h 2 25 5C C3 3h h 5 52 23 31 1h h 7 72 20 01 1h h AX3000h 低地址 高地址 BX25C3h CX5231h DX7201h S SP P S SP P S SP P S SP P S SP P PUSH AX PUSH BX PUSH CX PUSH DX 40 第一章 微型计算机基础 SS堆栈段 存储器 3 30 02 23 3h h 2 20 00 01 1h h 低地址 高地址 2 25 5C C3 3h h 5 52 23 31 1h h 7 72 20 01 1h h 3 30 00 00 0h h S SP P AX BX CX DX 2 22 23 34 4h h 3 35 53 36 6h h 4 42 2A A6 6h h 5 5A A3 31 1h h 3 30 00 00 0h h 2 25 5C C3 3h h 5 52 23 31 1h h 7 72 20 01 1h h S SP P S SP P S SP P S SP P 弹栈操作 POP DX POP CX POP BX POP AX POP DX POP CX POP BX POP AX 41 第一章 微型计算机基础 LEA指令举例 数据拷贝 将存放在A1的100个字节的数据拷贝到A2 汇编程序如下 LEASI A1 SI指向A1 LEADI A2 DI指向A2 MOV CX 100 CX存放计数初值 AGAIN MOV AL SI 从A1处取值 MOV DI AL 传送一个字节数 INCSI 修改源地址指针 INCDI 修改目标地址指针 DEC CX 计数减1 JNZ AGAIN 计数值不为0 继续 2 20 0h h 0 07 7h h 5 59 9h h 9 90 0h h A A1 1 A A2 23 3B BD DF F 1 10 00 0 0 0 3 3B BD DF F 1 13 30 0 0 0 SI 1300H DI 1000H 42 第一章 微型计算机基础 输入输出指令 在输出 输入电路中 通常包含一组寄存器 用于与CPU交 换信息 称为I O端口 通常采用专用指令进行读写 IN AL 或 AX 端口号 OUT 端口号 AL 或 AX 例 IN AL 70H IN AX 70H 注意这是对两个端口 OUT 70H AL OUT 70H AX 注意这是对两个端口 43 第一章 微型计算机基础 数据操作指令 算术运算指令 加 减 乘 除 运算对象 8 16 32位有符号 无符号整数 以及BCD码 运算结果有可能影响标志位 OFDFIFTFSFZFAFPFCF 15870 溢出标志 位 进位 借位 标志位 符号标志 位 零标志位 44 第一章 微型计算机基础 加法和减法 nADD ADC INC DAA AAA n组合BCD码 n非组合BCD码 nSUB SBB DEC CMP NEG DAS AAS 45 第一章 微型计算机基础 加法指令 nADD指令 结果存回目标操作数 目标操作数 寄存器或存储器 源操作数 立即数 寄存器或存储器 注意 不能同时是存储器 不能对段寄存器进行加法运算 段寄存器也不能参与减法 乘法和除法运算 46 第一章 微型计算机基础 MOV SI 1000H MOV AX SI MOV DI 2000H ADD AX DI MOV SI AX MOV AX SI 2 ADCAX DI 2 MOV SI 2 AX 加法举例 双精度字加法 1234FEDCh 11228765h DS数据段 存储器 ADD AX DI MOV DI 2000h 低地址 高地址 MOV SI 1000h F FE Eh h D DC Ch h MOV AX SI 1000h 2000h SI DI 3 34 4h h 1 12 2h h 6 65 5h h 8 87 7h h 2 22 2h h 1 11 1h h MOV SI AX MOV AX SI 2 ADCAX DI 2 MOV SI 2 AX ALAH SI 2 DI 2 AX 0 0 CF 1 1 1000h2000h DCFE4186 4 41 1h h 8 86 6h h 1234235657 5 57 7h h 2 23 3h h SIDI 47 第一章 微型计算机基础 乘法运算 MULCX IMUL CX MUL源操作数 IMUL 源操作 数 无符号数乘有符号数乘 AL or AX 操作 数 隐含 AX DX MUL CL AL中和CL中的8位数相乘 结果放在AX MUL CX AX中和CX中的16位数相乘 结果放在AX和DX 隐含 注意 带符号乘法指令的两个操作数都是带符号 数 即它的最高位为符号位 48 第一章 微型计算机基础 逻辑运算与移位指令 位操作逻辑运算 用来对位进行屏蔽 设置或测试 NOT AND OR XOR TEST 移位 快速乘除SHL SAL RHL RAL 循环移位 多倍精度数的左移和右移 ROL ROR RCL RCR 49 第一章 微型计算机基础 位操作逻辑运算 X XX XX XX XX XX XX XX X AL 0 00 00 00 01 11 11 11 1 AND 0 00 00 00 0X XX XX XX X 1 10 00 00 00 00 00 00 0 1 1X XX XX XX XX XX XX X 0 00 00 00 01 11 11 11 1 1 10 01 10 01 10 00 01 1 1 10 01 10 00 01 11 10 0 OFORXOR80OF 与指令 AND AL 0FH 用于对某些位进行屏蔽 或指令 ORAL 80H 对某些位置1 异或指令 XOR AL 0FH 用于将二进制数的某些位求反 与指令 可用于IP地址求网络标识 或指令 可用于标志位的设置 异或指令 可用于位开关 自我清 零 非指令 NOT AL 按位取反 AL 50 第一章 微型计算机基础 移位 循环移位 左移指令 SAL SHL 右移指令 SAR SHR 左移1位乘2 右移1位除2 格式 SHL目标操作数 计数 移1位时 计数值可以为立即数1 移多位时 计数值必须先存入CL寄存器 例 MOVCL 3 SHLAX CL 51 第一章 微型计算机基础 开环移位指令 C CF F 0 C CF F 0 SAL 算术左移 SHL 逻辑左移 SAR 算术右移 C CF F SHR 逻辑右移 C CF F0 用于带符号数 用于无符号数 注意 左移1位时 如果最高位和CF不同 则OF 0 这对带符号 数可依此判断移位前后的符号位不同 52 第一章 微型计算机基础 循环移位指令 ROL 左环移 ROR 右环移 C CF F C CF F RCL 进位左环移 RCR 进位右环移 C CF F C CF F 53 第一章 微型计算机基础 0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0 移位指令举例 计算用AX BX表示的物理地址 AX存 放段地址 BX存放偏移量 将结果存 放在DL和AX中 MOVCX 4 循环次数 MOVDL 0 清零 L1 SALAX 1 移位 RCLDL 1 大循环 移入CF DECCX 计数器减1 JNZL1 判断 ADDAX BX 计算物理地址 DL AX保存了20位物理地址 DL为高4位 AX为低16位 0 01 10 00 00 00 01 11 10 00 00 01 10 01 11 11 1 CF DL BX 0 01 10 00 00 00 01 10 01 11 10 01 10 01 10 01 1AX D542h1743h 1 10 00 00 00 01 10 00 01 10 01 10 01 10 01 10 00 00 01 10 00 00 00 00 00 01 10 01 10 01 10 00 00 01 11 10 00 00 01 11 10 01 11 10 01 10 01 11 1 1 11 10 00 00 00 01 11 10 01 10 0 54 第一章 微型计算机基础 控制类指令 控制程序的流向 无条件转移 JMP CALL RET 条件转移 P 118表3 10 循环控制LOOP LOOPZ LOOPE LOOPNZ LOOPNE 中断INT INTO IRET 55 第一章 微型计算机基础 中断控制系统 中断控制的概念 什么是中断 中断是一个过程 这个过程一般由微处理器内部或外部硬件引起的 即CPU 暂时中止正在执行的程序 转去执行请求中断的那个外设或事 件的中断服务程序 待处理完毕后 又回到刚才中止了的程 序 继续执行后续程序 微处理器外部设备 软件中断 外部中断或 硬件中断 56 第一章 微型计算机基础 中断控制系统的功能 1 实现中断响应 进行中断服务和返回 2 能实现中断优先权排队 3 能实现中断嵌套 中中 断断 源源 中中断断 请请求求 当当 前前 程程 序序 中中断断 服服务务 程程序序 中断返回 中断调用程程序序断断点点 57 第一章 微型计算机基础 中断向量 所谓中断向量就是一组中断服务程序的入口地址 0段 0000 0000H 0000 03FCH 偏移量 段地址 例 类型号为17H的中断处理程序 存放在2345 7890H开始的内存区域 中 则17H中断对应的中断向量存放 在0000 005CH处 0号中断入口地址 FF号中断入口地址 0000 03FFH 58 第一章 微型计算机基础 系统功能调用 DOS系统的很多功能都集中在21H型中断服务程序中 利 用设置功能号 选择不同的服务功能 称为系统功能 调用 调用前的准备工作 1 在AH中设置功能号 00 62H 2 设置相应的入口参数 例 设置时间 功能号为2DH AH 2DH CH 时 CL 分 DH 秒 DL 1 100秒 然后执行 INT 21H 59 第一章 微型计算机基础 第3章 汇编语言及程序 汇编程序 高级语言程序 编 译 连 接 机 器 语 言 反汇编 计算结果 任何文本编辑软件 高级语言编译程序 MASM TASM 汇编程序 60 第一章 微型计算机基础 汇编语言的基本语法 常量 变量和表达式 常量 二进制 xxxxxxxxB01000101B 八进制 xxxO或xxxQ721O或721Q 十进制 xxxx或xxxxD1991或1991D 十六进制 xxxxH0F14H 字符串 xxx 或 xxx AB 数值常量 符号常量 用EQU或 定义 COUNTEUQ A 61 第一章 微型计算机基础 标号 指令存放单元的符号地址 是转移 调用 循环指 令的操作数 标号的三种属性 段属性 SEG 偏移量属性 OFFSET 距离属性 NEAR FAR 62 第一章 微型计算机基础 变量 内存单元的名字 由DB DW DD DQ DT定义 三个属性 段属性 SEG 表示变量存放在哪个逻辑段 偏移量属性 OFFSET 表示变量在逻辑段中离段起始点的字节数 类型属性 TYPE 表示变量占用内存单元的字节数 可以用相应的分析运算符 SEG OFFSET TYPE 来求得 VAR DATASEGMENT DATA1DB12 DATA2DW17 VAR DATAENDS MOVAX OFFSET DATA2 V VA AR R D DA AT TA A D DA AT TA A1 1 D DA AT TA A2 2 12 34 17个字 63 第一章 微型计算机基础 伪指令及其应用 n数据定义及存储器分配伪指令 n符号定义伪指令 n程序计数器 64 第一章 微型计算机基础 分段结构 分段编写 由伪指令SEGMENT ENDS表示段的开始和结束 一个源程序由若干段组成 以END语句为结束 DATASEGMENT DATAENDS STACKSEGMENT STACK STACKENDS CODESEGMENT ASSUME DS DATA SS STACK CS CODE START CODEENDS ENDSTART 数据段 堆栈段 代码段 数据段 65 第一章 微型计算机基础 汇编程序的基本控制结构 程序的基本结构形式有三种 顺序结构 分支结构 循环结构 程序设计理论已经证明 这三种结构是完备 的 用它们可以写出任何功能的程序 1 顺序结构 顺序结构是最简单的一种程序结构 指令只沿 直线顺序执行 66 第一章 微型计算机基础 条件结构 程序段1程序段2 条件 后续程序 Y YN N JZ L1 L1 L2 L3 JMP L3 TEST AX 1 67 第一章 微型计算机基础 循环结构 先执行 后判断 初始化部分 循环体 修改部分 条件 68 第一章 微型计算机基础 循环结构 先判断 后执行 初始化部分 循环体 修改部分 条件 后继程序 69 第一章 微型计算机基础 第五章 数字量输入输出 接口的基本概念 I O信号的形式 n开关量 只有两种稳定状态的信号 n数字量 多位0和1按一定规则组合所表示的信号 n脉冲量 关注两个稳态之间的变化 如上升沿 下降沿 n模拟量 数值连续变化的信号 70 第一章 微型计算机基础 I O接口与系统的连接 CPU与I O设备之间的信号 1 数据信息 数字量 模拟量 开关量 2 状态信息 是外设通过接口往CPU传送的信息 3 控制信息 是CPU通过接口传送给外设的信息 接口部件的I O端口 a 数据端口 b 控制端口 c 状态端口 接口与系统的连接 用来和I O设备相连 用来和系统总线相连 71 第一章 微型计算机基础 输入 输出的控制方式 1 程序控制方式 a 无条件传送 直接传送 又称为同步传送方式 要求 外设已做好进行数据交换的准备 接收或发送数据所需 的时间是确定的 由程序中直接插入I O指令来实现 b 条件传送 即查询传送 检测外设的状态 状态有效时执行I O操作 2 中断控制方式 外设产生中断请求 完成I O操作 3 直接存储器存取 DMA 利用专门的接口电路芯片 接管总线控制 实现外设和存储器之 间直接进行数据交换 4 其它方式 I O处理机方式 72 第一章 微型计算机基础 可编程定时器 8253 1 定时器的工作原理 计数和计时本质上是相同的 它们都是对一个输入脉冲进行计 数 如果输入脉冲的频率一定 那么记录脉冲的个数与所需的时 间是一一对应的关系 例如输入脉冲频率为2MHz 那么计数2 106等于计时1秒 因此 使用一个芯片既能计时也能计数 计数 定时的功能 对外部事件发生次数进行计数 提供计算机系统常用的定时信号 73 第一章 微型计算机基础 可编程定时器 8253 计数器的一般结构 控制寄存器 决定工作模式 初始值寄存器 计数的初始值 状态寄存器 反映工作状态 计数输出寄存器 CPU从中读当前计数值 计数器 执行计数操作 CPU不能访问 控制寄存器 初始值寄存器 计数器 计数输出寄存器 状态寄存器 CLK GATE OUT 74 第一章 微型计算机基础 2 8253的编程结构 注意 8253没有状态寄存器 计数器0 控制寄存器 CRHCRL CEHCEL 计数执行部件 CE 计数初值 寄存器 CR OLHOLL 输出锁存器 OL 计数器1 计数器2 75 第一章 微型计算机基础 3 8253控制字的格式 D7D6D5D4D3D2D1D0 计数器选择 00 计数器0 01 计数器1 10 计数器2 11 无用 读 写指示器 00 锁存 01 只读 写低8位 10 只读 写高8位 11 先读 写低8位 后读 写高8位 工作方式选择 000 方式0 001 方式1 010 方式2 011 方式3 100 方式4 101 方式5 计数方式选择 0 二进制 1 BCD码 计数初值计算 N fCLK fOUT 二进制计数方式 初值范围0000 FFFFH 0代表65536 BCD计数方式 初值范围0000 9999H 0代表10000 方式0 正跃变 方式1 单脉冲 方式2 分频 方式3 方波 方式4 软触发单脉冲 方式5 硬触发单脉冲 CWN 4 CLK GATE OUT WR 43210FF CWN 3 CLK GATE OUT WR 3210FF32 CWN 3 CLK GATE OUT WR 3213213 CW N 4 CLK GATE OUT WR 43214321 OUT 43214355 N 5 CW CLK GATE OUT WR N 5 43214055 CWN 3 CLK GATE OUT WR 3210FF32 77 第一章 微型计算机基础 8253的编程 a 初始化编程 内容 工作控制字和初始计数值 原则 设置计数初始值前要先写入控制字 b 计数值读出 必须先输出锁存命令 然后从计数器口地址读 入当前计数值 78 第一章 微型计算机基础 8255A的内部逻辑结构 A组端口 8 A组端口 C上半部 4 B组端口 C下半部 4 B组端口 8 A组控 制电路 B组控 制电路 8位内部数据总线 I O PA7 PA0 I O PC7 PC4 I O PC3 PC0 I O PB7 PB0 外设接口内部逻辑CPU接口 读 写 控制 逻辑 数据 总线 缓冲器 双向 数据总线 CS RESET A0 A1 WR RD 79 第一章 微型计算机基础 8255A的引脚 8 82 25 55 5A A的的引引脚脚特特性性 1234 567 2635 368927 28 29 30 31 32 33 34 10 11 12 13 17 16 15 14 25 24 23 22 21 20 19 18 37 38 39 40 D7D0 数据总线 PA7PA0 PB7PB0 PC7PC0 A口B口C口 RESET A0 A1RD WRCS VCCGND 控制线电源 8255A 80 第一章 微型计算机基础 8255A的编程命令和工作方式 a 8255A的编程命令 8255A可通过指令在控制端口中设置控制字来决定它的工 作方式 其控制字可分为两类 方式选择控制字 它可使8255A的3个数据端口工作在不同的工作方式 端口C按位置0 置1控制字 它可使端口C中的任何一位进行置位或复位 这两类控制字通过控制端口的最高位即D7位为0或1来区 别 方式选择控制字的最高位为1 而端口C置1 置0的控制字 最高位为0 D7D6D5D4D3D2D1D0 A组工作方式B组工作方式特征位 81 第一章 微型计算机基础 1 工作方式选择控制字 D6D5 选择端口A的工作方式 00 工作方式0 01 工作方式1 1 工作方式2 D4 确定端口A的输入 输出方 式 0 A口为输出方式 1 A口为输入方式 D3 确定端口C高4位的输入 输 出方式 0 PC7 PC4为输出方式 1 PC7 PC4为输入方式 1D6D5D4D3D2D1D0 D2 选择B口的工作方式 0 工作方式0 1 工作方式1 D1 确定B口的输入 输出方 式 0 B口为输出方式 1 B口为输入方式 D0 确定端口C低4位的输入 输 出方式 0 PC3 PC0为输出方式 1 PC3 PC0为输入方式 82 第一章 微型计算机基础 举例 如果要求8255A芯片工作在以下工作方式 端口A 方式1 输入 端口B 方式0 输出 端口C高4位 输出 端口C低4位 输入 则8255A的工作方式选择控制字为 10110001即 B1H 如果8255A控制寄存器的 端口地址为300H 则程序为 MOVAL B1H 方式控制字送AL MOVDX 300H 控制端口地址送DX OUTDX AL 控制字送控制端口 1D6D5D4D3D2D1D0 83 第一章 微型计算机基础 2 C口置位 复位控制字 端口C常常作为控制位或状态位来使用 使用这个控制字 可以使C口的任何一位设置成高电 平或低电平 0D6D5D4D
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 银行员工年终工作总结及工作方案
- 比亚迪汽车基础知识培训课件
- 比亚迪汉课件
- 探讨2025年药品绿色生产对人力资源的需求与培养
- 浙江高中语文教学课件
- 2025年新能源太阳能光伏组件技术创新与光伏农业应用报告
- 2025年新型储能电池管理系统技术专利与知识产权保护鉴定报告
- 《设备使用协议》
- 线上公共艺术活动与发展合同
- 四下科学教学课件
- 《建筑装饰设计收费》
- 设备预防性维修管理
- 去极端化自我剖析
- 生殖伦理培训课件
- 船舶压载水取样与检测技术
- 【种植活动中培养幼儿自主探究的实践研究4100字(论文)】
- 飞蚊症护理的课件
- 金融工程.郑振龙(全套课件560P)
- 古典诗歌的生命情怀
- 2017版小学科学课程标准思维导图
- 第十一章-异常分娩-1产力异常
评论
0/150
提交评论