Microsoft PowerPoint - 第01章 基础知识.pptx

Similar documents
untitled

微机第02章1(指令寻址)

DPJJX1.DOC

Ps22Pdf

<4D F736F F D20B5DAC8FDCBC4D5C2D7F7D2B5B4F0B0B82E646F63>

微机第02章1(指令寻址)

幻灯片 1



指令系统 可分成如下 6 类 : 数据传送指令 算术运算指令 逻辑运算和移位指令 串操作指令 程序控制指令 处理器控制指令 2015 年 3 月 26 日星期四 8 时 41 分 27 秒 2

Microsoft Word - 最新正文.doc

主要内容 指令系统的一般概念 指令操作方式操作码的含义指令对操作数的要求指令执行的结果 寻址方式 指令说明 2015 年 3 月 16 日星期一 8 时 2 分 37 秒 2

提纲. 1 实验准备. 2 从实模式进入保护模式. 3 小结 陈香兰 ( 中国科学技术大学计算机学院 ) 软件综合实验之操作系统 July 1, / 11

学年本科教学和思政工作情况汇报

Microsoft PowerPoint - 05-第五讲-寻址方式.pptx

数据库系统概论

微机第02章1(指令寻址)

数据库系统概论

Microsoft Word - em78 sub program.doc

D/A DAC ( 1us) (10~20 ) DAC0832 1

Microsoft Word - 正文.doc

一 汇编语言计算机基础 从事计算机科学方面的工作, 汇编语言是我们必不可少缺的基础 我们的工作平台 研究对象都是机器, 而汇编语言是人和计算机沟通的最直接方式, 它描述了机器最终所要执行的指令序列 学习汇编语言可以让你充分获得底层编程的体验, 深刻理解机器运行程序的机理 二 基础知识 1. 汇编语言

第5章:汇编语言程序设计

<4D F736F F D20C7B6C8EBCABDCFB5CDB3C9E8BCC6CAA6B0B8C0FDB5BCD1A75FD1F9D5C22E646F63>

习 题 一

第1章 概论

1 CPU

Microsoft PowerPoint - 微原-第3章2.ppt [兼容模式]

Microsoft PowerPoint - 微原-第3章3.ppt [兼容模式]

2 微机原理与接口技术 ( 第二版 ) 图 1 1 第一台电子计算机 ENIAC 1944~1945 年间, 著名的美籍匈牙利数学家冯 诺依曼 (John Von Neumann)( 如图 1 2 (a) 所示 ) 应邀参加 ENIAC 计算机研制任务 在研制中, 他深刻认识到 ENIAC 不能存储

L1 computer system overview

PowerPoint Presentation

A. 城 市 化 是 我 国 发 展 的 必 由 之 路 B. 单 纯 发 展 大 城 市 不 利 于 城 市 化 的 推 进 C: 要 实 现 城 市 化, 就 必 须 让 城 市 充 分 吸 纳 农 村 人 口 D: 大 城 市 对 外 地 农 村 人 口 的 吸 引 力 明 显 低 于 中 小

3.3.2 算术运算指令 数据类型 : 无符号和有符号整数 无符号数又分成 : 无符号二进制数 ; 无符号压缩十进制 :1 字节表示 2 个十进制数 ; 无符号非压缩十进制 :1 字节表示 1 个十进制数 有符号数 : 有符号二进制数 用补码表示 2015 年 3 月 26 日星期四 11 时 3

Introduction to Computer Systems /18-243, spring st Lecture, Jan. 12th

数据库系统概论

《计算机应用基础》学习材料(讲义)

Microsoft PowerPoint - Ch3-8086CPUæ„⁄令系ç»�(3)-æŁ°æ“®ä¼€é•†æ„⁄令

cs

<4D F736F F F696E74202D20B5DA35D5C2CEA2B4A6C0EDC6F7B9A4D7F7D4ADC0ED2E707074>

CH559指令周期.doc

微型计算机原理与应用


<4D F736F F D C4EAB9FABCD2B9ABCEF1D4B1D0D0D5FEC4DCC1A6B2E2D1E9A3A841C0E0A3A92E646F63>

2006年国家公务员招录考试行测真题(A)

课程目标 本课程是学习和掌握微机硬件知识和汇编语言程序设计的入门课程, 主要内容包括 : 16 位微型计算机的基本工作原理 汇编语言程序设计 微型计算机接口技术 32 位微机的原理 目的 : 通过本课程的学习, 深入了解微型计算机的基本结构, 掌握汇编语言编程方法和接口技术的设计能力, 熟悉 16/

一、填空题

untitled

Microsoft Word - Ö¸Á.doc

<4D F736F F F696E74202D DB4E6B4A2C6F7C9E8BCC62E BBCE6C8DDC4A3CABD5D>

主要内容 微型机的构成 ( 回顾 ) 总线 接口 8086 CPU 的结构及工作原理 8086 存储器 8086 系统配置 2015 年 3 月 9 日星期一 3 时 38 分 16 秒 2

Microsoft PowerPoint - 第一章(07版).PPT

相 关 知 识 1 计 算 机 工 作 原 理 1946 年 2 月, 世 界 上 第 一 台 电 子 计 算 机 ENIAC (Electronic Numerical Integrator And Computer, 电 子 数 字 积 分 计 算 机 ) 诞 生 于 美 国 宾 夕 法 尼 亚

<4D F736F F F696E74202D DB5DABEC5BDB22DCEA2B4A6C0EDC6F7B5C4D3B2BCFEBDE1B9B9A3A8D2BBA3A92E >

标题

2011国家司法考试试题(试卷一)

<4D F736F F D20C7B0CBC4D5C2D7F7D2B5CCE22E646F6378>

學 習 內 容 元 素 一 直 透 過 中 小 學 校 課 程 相 關 課 題 培 養, 如 : 小 學 常 識 科 人 文 學 科 和 科 學 科 等 這 些 從 沒 有 因 為 德 育 及 國 民 教 育 科 課 程 指 引 在 2012 年 擱 置 而 有 任 何 改 變 4. 教 育 局 持

消防论文(二)

,768 32,767 32K JMP Jnnn (386+) LOOP CALL [Label:] JMP short/near/far address L10: jmp jmp L20: L10 L20

101

1 Project New Project 1 2 Windows 1 3 N C test Windows uv2 KEIL uvision2 1 2 New Project Ateml AT89C AT89C51 3 KEIL Demo C C File

B. 工资管理软件 C. 用汇编语言编写的一个练习程序 D.Windows 操作系统 86. 计算机操作系统是一种 A. 系统软件 B. 应用软件 C. 工具软件 D. 调试软件 参考答案 A 87. 下列 4 种软件中属于应用软件的是 A. 财务管理系统 B.DOS C.Windows 98 D.

(C) 比 得 上 (D) 如 果 17. ( ) 聖 賢 經 傳 和 傳 奇 小 說 兩 個 傳 字, 其 音 義 關 係 為 何? (A) 音 同 義 異 (B) 音 義 皆 同 (C) 義 同 音 異 (D) 音 義 皆 異 18. ( ) 下 列 選 項 中 的 形 似 字, 何 者 讀 音

教材 微型计算机与接口技术 ( 第二版 ) 科学出版社楼顺天, 周佳社, 张伟涛编著

Microsoft PowerPoint - Ch CPU总线及其形成.ppt [兼容模式]


数据库系统概论

bingdian001.com

小儿疾病防治(四).doc

99 cjt h 7. 0 (8 ) 0 () abc a b c abc0 aaa 0 a () bca abc0 aa0 a0 0 a0 abc a789 a b c (8 ) 9!

计组复习提纲

li 侉 2. 在 下 列 加 点 字 的 正 确 读 音 旁 打 : (1) 我 看 见 路 边 有 一 条 蛇 A.sh 佴 B.sh 佶 C.sh 侑 D.sh 侉 (2) 外 面 的 泥 土 冻 得 很 硬 A.y 侏 n 倮 B.y 侃 n 倮 C.y 佾 n 倮 D.y 佻 n 倮 (3

第七章 中断

1. ( )( ) A. B. C. D. 2. ( )( ) A. : B. : C. : D. : 3. ( )( ) A. : B. : C. : D. : 1 D : 2

AT89C2051中文资料.doc

本次习题课中提到的 课本, 均指机械工业出版社的 Intel 微处理器 ( 原书第八版 ) 中文版, 使用其他版本课本的同学需要自己对应

Microsoft Word - 1 page0.doc

綜合社會保障援助指引


Microsoft Word - zw

MSP430ϵÁе¥Æ¬»úµÄÖ¸Áîϵͳ.pps [¼æÈÝģʽ]

EC( )13 第 2 頁 (b) 把 總 目 100 在 年 度 常 額 編 制 內 所 有 非 首 長 級 職 位 按 薪 級 中 點 估 計 的 年 薪 總 值 上 限 提 高 12,480,540 元, 即 由 461,070,000 元 增 至 473,550

Microsoft PowerPoint - Ch0-绪论.pptx

第二章 8086体系结构与80X86CPU

2018 厦门大学 822 微机原理考研专业课复习全书 编辑推荐 聚英教育秉持专注 责任 诚信原则, 倾情推出了 厦门大学考研专业课复习全书 系列丛书, 本书系统全面总结考研专业课知识, 重难点分明, 深度解析历年考研真题并进行命题预测, 为考生节省大量宝贵的复习时间, 帮助考生在扎实基础之上迅速提

例 如, 一 个 含 有 2000 个 记 录 的 文 件, 每 个 磁 盘 块 可 容 纳 250 个 记 录, 则 该 文 件 包 含 8 个 磁 盘 块 然 后 对 该 文 件 作 二 路 归 并 的 外 排 序, 每 次 往 内 存 读 入 两 个 磁 盘 块, 排 序 后 再 写 回 磁

C. 大规模集成电路 D. 晶体管 参考答案 B 8. 采用超大规模集成电路的计算机是计算机发展中的 A. 第 4 代 B. 第 3 代 C. 第 2 代 D. 第 1 代 参考答案 A 9. 当前的计算机一般被认为是第四代计算机, 它所采用的逻辑元件是 A. 晶体管 B. 集成电路 C. 电子管

西安美术学院福建公安高等专科.doc

Create By PageManager

图 内部结构图 8251 的外部引脚如图 所示, 共 28 个引脚, 每个引脚信号的输入输出方式如图中的箭 头方向所示

! "! "! # $ # # %#!# $# &# # ()*+, )-.) /# () () 0# 1,2.34, 4*.5)-*36-13)7,) ,9,.).6.(+ :# 13).+;*7 )-,7,<*7,-*=,>,7?#

<4D F736F F D20C1E3B5E3CFC2D4D8C4A3B0E52E646F63>

tbjx0033ZW.PDF

本科生毕业设计(论文)打印格式的要求

新开放专科单片机技术与应用教学大纲

《微型算计机接口技术》教材编写大纲

<4D F736F F D C4EAC6D5CDA8B8DFB5C8D1A7D0A3D5D0C9FAC8ABB9FACDB3D2BBBFBCCAD4CEC4BFC6D7DBBACDCAD4BEEDBCB0B4F0B0B82DD6D8C7ECBEED2E646F63>

µÚ¶þÕ µ¥´¦ÀíÆ÷Ìåϵ½á¹¹

第4章

Transcription:

微处理器与微计算机系统 教材 : 单片机原理与应用及 C51 程序设计 ( 第 3 版 ) 清华大学出版社 主讲 : 谢维成 http://xweicheng.ys168.com scxweicheng@mail.xhu.edu.cn 西华大学电气与电子信息学院

第 1 章计算机基础知识 主要内容 : 1 有符号数的表示 2 微型计算机工作原理 3 单片机的概念及特点

A Historical Background ENIAC Electronic Numerical Integrator And Calculator [Computer] 电子数字积分计算机

ENIAC ENIAC

ENIAC ENIAC

ENIAC ENIAC

1.1 A Historical Background C. The Microprocessor Age (Intel) Date Part Data Bus Width Memory Size 4004 4 1979 8088 8 1M 1989 80486sx 32 4G+16kcache 1993 Petium 64 4G+16kcache 1997 Petium II 64 64G+32kl1 cache+512kl2cac he

Intel 4004 Intel 4004

Intel 8086/8088/80186 Intel 8086/8088/80186

Intel 8086/286/386/486 Intel 8086/286/386/486

Intel Petium I-IV Pentium 4 Intel Petium II Pentium 80386

The Moore s Law: the number of transistors integrated in a chip will double every 18 or 24 mouths

1.1 信息在计算机中的表示 1.1.1 数在计算机内的表示 计算机中的数通常有两种 : 无符号数和有符号数 无符号数 <----- 二进制形式表示 例如 :123 表示成 01111011B 有符号数 --- 机器数, 它的数值称为机器数的真值 13

1.1.1 数在计算机内的表示 符号位 数值位 + 0-1 机器数在计算机中有三种表示法 : 原码 反码和码 14

1. 原码 格式 : 符号位 绝对值 例 1-1 求 +67-25 的原码 ( 机器字长 8 位 ) 因为 +67 =67=1000011B -25 =25=11001B 所以 [+67] 原 =01000011B [-25] 原 =10011001B 注意 : (1) 原码表示范围为 -(2 n-1-1)~+(2 n-1-1), 例如 : 8 位的范围为 -127~+127 (2) 原码表示时,-0 的编码为 10000000,+0 的编码为 00000000 ( 假设机器字长为 8 位 ) 15

2. 反码 格式 : 正数 负数 符号位 0 绝对值 符号位 1 绝对值各位取反 注意 : (1) 反码表示范围为 -(2 n-1-1)~+(2 n-1-1), 例如 :8 位的范围为 - 127~+127 (2) 反码表示时,-0 的编码为 11111111,+0 的编码为 00000000 ( 假设机器字长为 8 位 ) 16

3. 码 格式 : 正数负数 +1 符号位 0 绝对值符号位 1 绝对值各位取反 例 1-3 求 +67-25 的码 ( 机器字长 8 位 ) 因为 [+67] 原 =01000011B [-25] 原 =10011001B 所以 [+67] =01000011B [-25] =11100111B 注意 : (1) 码表示范围为 -(2 n-1-1)~+(2 n-1 ), 例如 :8 位的范围为 - 128~+127 (2) 码表示时,-0 的编码为 00000000,+0 的编码为 00000000 ( 假设机器字长为 8 位 ) 17

求运算 : [X] 求 [-X] 例 1-4 已知 +25 的码为 00011001B, 用求运算求 -25 的码 因为 [25] 求 [-25] 所以 [-25] =11100110+1=11100111B 18

4. 码的加减运算 码的加 减法运算规则如下 : [X+Y] =[X] +[Y] [X-Y] =[X] - [Y] =[X] +[-Y] =[X] +{[Y] } 求 即 : 码表示时, 求两个数之和 [X+Y], 直接用 两个数相加 ([X] +[Y] ); 求两个数之差 [X-Y], 可以直接用两个数相减 [X] -[Y], 也可以先对 减数 [Y] 求运算, 然后再与被减数 [X] 相加 19

例 1-5 假设计算机字长为 8 位, 完成下列码运算 1 (+25)+(+32) 因为 [+25] =00011001B [+32] =00100000B [+25] =0 0 0 1 1 0 0 1 + [+32] =0 0 1 0 0 0 0 0 0 0 1 1 1 0 0 1 所以 [(+25)+(+32)] =[+25] +[+32] =00111001B=[+57] 2 (+25)+(-32) 因为 [+25] =00011001B [-32] =11100000B [+25] =0 0 0 1 1 0 0 1 + [-32] =1 1 1 0 0 0 0 0 1 1 1 1 1 0 0 1 所以 [(+25)+(-32)] =[+25] +[-32] =11111001B=[-7] 20

3 (+25)-(+32) 因为 [+25] =00011001B [+32] =00100000B {[+32] } 求 =11011111+1=11100000B [+25] =00011001 - [+32] =00100000 借位 1 自动丢失 [+25] =00011001 + [-32] =11100000 1 11111001 11111001 所以 [(+25)-(+32)] =[+25] +[-32] = [+25] +{[+32] } 求 =11111001B=[-7] 21

4(+25)-(-32) 因为 [+25] =00011001B [-32] =11100000B {[-32] } 求 =00011111+1=00100000B - [+25] = 00011001 [-32] = 11100000 [+25] =00011001 + [+32] =00100000 1 00111001 00111001 借位 1 自动丢失 所以 [(+25)-(-32)] =[+25] + [-32] = [+25] +{[-32] } 求 =00111001B=[+57] 22

5. 十进制数的表示 十进制编码又称为 BCD 码 分压缩 BCD 码和非压缩 BCD 码 压缩 BCD 码又称为 8421 码, 它是用四位二进制编码来表示一位十进制符号 十进制符号 压缩 BCD 编码 十进制符号 压缩 BCD 编码 0 0000 5 0101 1 0001 6 0110 2 0010 7 0111 3 0011 8 1000 4 0100 9 1001 例如 : 十进制数 124 的压缩 BCD 码为 0001 0010 0100 十进制数 4.56 的压缩 BCD 码为 0100.0101 0110 23

非压缩 BCD 码是用八位二进制来表示一位十进制符号, 其中低四位二进制编码与压缩 BCD 码相同, 高四位任取 例如 : 十进制数 124 的非压缩 BCD 码为 0011 0001 0011 0010 0011 0100 24

1.1.2 字符在计算机内的表示 美国信息交换标准代码 ASCII 码 American Standard Code for Information Interchange 数字符号 0~9:30H 39h 26 个大写字母 :41H 5AH 26 个小写字母 :61H 7AH 回车 :0DH 换行 :0AH 25

1.2 微型计算机的基本结构和工作原理 现在的计算机采用冯 诺伊曼结构, 由运算器 控制器 存贮器 输入设备和输出设备五大部分组成 集成运算器和控制器的这一块集成电路称为中央处理器或微处理器, 简称 CPU 1.2.1 微型计算机的发展 1971 年诞生, 一般分为以下几代 : 第一代 (1971~1973):4 位和低档 8 位微处理器第二代 (1974~1977): 中高档 8 位微处理器第三代 (1978~1984):16 位微处理器第四代 (1985~1992):32 位微处理器 第五代 (1993~1999): 超级 32 位 Pentium( 奔腾 ) 微处理器 第六代 (2000 年以后 ):64 位高档微处理器 26

1.2.2 微型计算机的基本结构 微型计算机由中央处理器 存储器 输入 / 输出设备和系统总线等组成 随机存储器 RAM 只读存储器 ROM 数据总线 ( 双向 ) 中央处理器 (CPU) 地址总线 ( 单向 ) 控制总线 I/O 接口电路 I/O 接口电路 I/O 设备 1 I/O 设备 2 27

1.2.3 微处理器 由运算器 控制器 寄存器组和片内总线组成 地址总线 (20 位 ) AX BX CX DX 通用寄存器 AH AL BH BL CH CL DH DL B P S P S I D I 暂存器 ALU 数据总线 (16 位 ) 地址加法器 数据总线 (16 位 ) C S D S S S E S I P 内部通信寄存器 总线控制逻辑 8086 总线 A L U E U 控制器 队列总线 (8 位 ) 指令队列 1 2 3 4 5 6 标志寄存器 指令执行部件 (EU) 总线接口部件 (BIU) 28

内部分为两个部分 : 1 执行单元 (EU) 执行部件由运算器 (ALU) 通用寄存器 标态寄存器和 EU 控制系统等组成 EU 从 BIU 的指令队列中获得指令, 然后执行该指令, 完成指今所规定的操作 2 总线接口单元 (BIU) 总线接口部件 BIU 同外部总线连接, 为执行部件 EU 完成全部的总线操作, 并且计算 形成 20 位的内部存储器的物理地址, 达到寻址 1M 字节内存地址空间的目的 29

内部寄存器 8086 CPU 有 14 个 16 位寄存器, 分为 5 个组 AX AH AL BX BH BL CX CH CL DX DH DL 15 SP BP SI DI 累加器基址寄存器计数器数据寄存器堆栈指针基址指针源变址目的变址 通用数据寄存器指针和变址寄存器 15 IP FLAGS 指令指针标志寄存器 控制寄存器 15 0 CS 代码段 DS SS ES 数据段堆栈段附加段 段寄存器 30

1) 通用寄存器组 AX 称为累加器, 是算术运算时使用的主要寄存器, 所有外部设备的输入输出指令只能使用 AL 或 AX 作为数据寄存器 BX 称为基址寄存器, 可以用作数据寄存器, 在访问存储器时, 可以存放被读写的存储单元的地址, 是具有双重功能的寄存器 CX 称为计数寄存器, 可以用作数据寄存器, 在字符串操作 循环操作和移位操作时用作计数器 DX 称为数据寄存器, 它可以用作数据寄存器, 在乘 除法中 作为辅助累加器, 在输入输出操作中存放接口的地址 31

2) 指针和变址寄存器组 主要用来存放操作数的偏移地址 ( 即操作数的段内地址 ) SP 称为堆栈指针寄存器, 在堆栈操作中存放栈顶的偏移地址 BP 称为基址指针寄存器, 常用作堆栈区的基地址寄存器 SI 称为源变址寄存器, 主要用于在字符串操作中存放源操作数的偏移地址 DI 称为目的变址寄存器, 主要用于在字符串操作中存放目的操作数的偏移地址 32

3) 段寄存器组段寄存器用来存放段的基址 ( 即段的起始地址的高 16 位 ) CS 称为代码段段寄存器, 代码段用来存放程序代码 CS 中存放当前正在执行的代码段的段基址 DS 称为数据段段寄存器, 数据段用于存放当前使用的数据 DS 中存放当前数据段的段基址 SS 称为堆栈段段寄存器, 堆栈段是内存中一段特殊的存储区 SS 中存放堆栈段的段基址 ES 称为附加数据段段寄存器, 程序需要第二个数据段时, 可以使用 ES 存放的该数据段的段基址 33

4) 指令指针寄存器指令指针寄存器 IP(instruction pointer) 是一个 16 位的寄存器,IP 存放下一条要执行的指令的偏移地址 8086 中, 由 CS 和 IP 控制着程序的执行顺序 在程序执行时, 由 EU 控制器控制, 通过 BIU 部件从 CS 和 IP 指向的内部存储器中取出当前执行的指令送执行部件执行, 在取出的同时, 指令指针寄存器 IP 会自动调整 ( 加上当前指令的字节数 ) 以指向下一条指令, 以便程序能自动往后执行 当程序发生转移时, 就必须把新的指令地址 ( 目标地址 ) 装入 CS 和 IP, 这通常由转移指令来实现 34

5) 标志寄存器 标志寄存器 FLAGS 共有 9 个标志位, 其中 6 个为状态标志位,3 个为控制标志位 O D I T S Z A P C C 进位标志位 P 奇偶标志位 A 半加标志位 Z 零标志位 S 符号标志位 O 溢出标志位 T 陷阱标志位 ( 单步标志位 ) I 中断允许标志位 D 方向标志位 35

1.2.4 存储器 指内部存储器 ( 又称为主存或内存 ) 它是微型计算机的存储和记忆装置, 用来存放微型计算机执行的程序和 数据 地址指令或数据 存储单元内容和存储单元地址 3000H 3001H 3002H 3003H 54H A3H 56H 3BH 0 0 1 1 1 0 1 1 36

1. 存储器的基本结构 ------- 半导体存储器 AB 地址译码器 地址 00 01 02 FF 单元内容 00 单元 01 单元 02 单元 FF 单元 控制逻辑 I/O 缓冲器 DB 主要由地址译码器 存储矩阵 控制逻辑和三态双向缓冲器等部分组成 CB 图 1.10 存储器结构图 37

对内存单元的操作有两种 : 读和写 (1) 读操作 2) 存储器中的地址译码器对它进行译码, 找到 05H 号存储单元 地址 单元内容 AB 05 地址译码器 05 0 单元内容 2BH I/O 缓冲器 2BH 1)CPU 通过地址总线送地址号 05H 至存储器地址译码器 读信号 FF 单元内容 控制逻辑 DB 3)CPU 发出读的控制命令,05H 号存储单元中的内容 2BH 就出现在数据 38 总线

(2) 写操作 地址 2) 存储器中的地址译码器对它进行译码, 找到 06H 号存储单元 单元内容 3) 数据寄存器中的内容 1AH 经数据总线送给存储器 AB 06 地址译码器 06 0 单元内容 1AH I/O 缓冲器 1AH 1)CPU 通过地址总线送地址号 06H 至存储器地址译码器 FF 单元内容 控制逻辑 DB 4)CPU 发出写的控制命令, 于是数据总线上的信息 1AH 就可以写入到 06H 号存储单元中 写信号 39

2. 存储器的分类 随机读写存储器 RAM(Random Access Memory) 和只读存储器 ROM(Read Only Memory) 3.8086 中的存储器 总存储空间为 1M 字节, 地址 20 位 由于 8086 的寄存器都是 16 位, 不能直接提供 20 地址, 因此, 为了管理方便,8086 把 1M 空间分成若干块 ( 称为 逻辑段 ), 各个逻辑段之间可在实际存储空间中完全分开, 也可以部分重叠, 甚至可以完全重叠 每个逻辑段容量不超过 64K 字节, 这样就可用 16 位寄存器提供地址访问 40

物理地址与逻辑地址 物理地址 : 送给存储器的 20 位地址 逻辑地址 : 程序中访问存储器的地址, 段基址 : 偏移地址 转换 : 物理地址 = 段基址 16 + 段内偏移地址 偏移地址 (16 位 ) 段寄存器 (16 位 ) 0000 Σ 地址加法器 例如 : 段基址 : 偏移地址分别是 1200H:0345H 则物理地址 =1200H 16 +0345H =12345H 物理地址 (20 位 ) 41

1.2.5 输入 / 输出设备及 I/O 接口电路 1.I/O 接口的功能 (1) 数据的寄存和缓冲功能 (2) 信号转换功能 (3) 设备选择功能 (4) 外设的控制和监测功能 (5) 中断或 DMA 管理功能 (6) 可编程功能 2. 外部设备与 CPU 之间的数据传送方式 (1) 无条件传送方式 (2) 查询传送方式 (3) 中断传送方式 42

3.8086 中的常用接口电路简介 8255A 是 Intel 公司生产的可编程并行 I/O 接口芯片 8253 是 Intel 公司生产的可编程计数 / 定时器接口电路 8251A 是 INTEL 公司生产的可编程的串行通讯接口芯片 8259A 是 Intel 公司生产的可编程中断控制器芯片 43

1.2.6 总线 总线是连接多个设备或功能部件的一簇公共信号线, 它是计算机各组成部件之间信息交换的通道 按总线在微机结构中所处的位置不同, 可把总线分为以下四类 : (1) 片内总线 : (2) 片级总线 : (3) 系统总线 : (4) 外部总线 : 按总线功能可分三类 (1) 地址总线 (AB): (2) 数据总线 (DB): (3) 控制总线 (CB): 44

1.2.7 微型计算机工作过程 存储程序 和 程序控制 指令是指计算机完成一个基本操作的命令 指令系统是一个计算机所能够处理的全部指令的集合 一条指令一般包括两个部分 : 操作码和操作数 例如计算 3+5=? 在执行程序之前需要做好如下几项工作 : (1) 用助记符号指令 ( 汇编语言 ) 编写程序 ( 源程序 ); (2) 用汇编软件 ( 汇编程序 ) 将源程序汇编成计算机能识别的机器语言程序 ; (3) 将数据和程序通过输入设备送入存储器中存放 45

假设上面例子的汇编语言源程序和机器语言程序如下 : 汇编语言 机器语言 功能 MOV AL,03H 1011 0000 0000 0011B ; 把 01 送入累加器 A ADD AL,05H 0000 0100 0000 0101B ;02 与 A 中内 容相加, 结果存入 A HLT 11110100B ; 停止操作 编译好的机器语言程序有 5 个字节, 设放于存储器地址为 00H 开始的单元处 46

47

1. 执行第一条指令的过程 ----(1) 取第一条指令 +1 5 存储器 B0H 01H 04H 02H F4H 3E AB 3 AR 00 1 00 2 PC PLA ID 7 B0H 内部数据总线 F ALU J 2 I 2 AL IR 6 B0H BL DB 4 DR CPU 读 48

取第一条指令 1) 当前程序计数器 PC 或 IP 内容 (00H) 送地址寄存器 AR 2) PC 自动加 1, 等于 01H, 指向下一个存储器单元 这里指向第一条指令的操作数 3) 地址寄存器 AR 的内容 00H 通过地址总线 AB 送至存储器, 经地址译码器译码选中相应的 00H 单元 4) CPU 发出存储器 读 命令 5) 在读命令的控制下, 所选中的 00H 单元的内容读至数据总线 DB 上 6) 读出的内容经数据总线 DB 送至数据寄存器 DR 7) 指令译码 因为取出来的是指令的操作码, 所以数据寄存器 DR 的内容被送至指令寄存器 IR 中, 然后再送至指令译码器 ID, 译码后由控制器发出执行这条指令的各种控制命令 49

1. 执行第一条指令的过程 ----(2) 执行第一条指令 5 存储器 B0H 01H 04H 02H F4H 3E AB 3 AR 01 +1 2 01 1 PC PLA ID IR 内部数据总线 F ALU J 2 I 2 01H AL DB 6 4 读 01H DR 7 CPU BL 50

执行第一条指令 1) 将当前程序计数器 PC 或 IP 的内容 01H 送至地址寄存器 AR 2) PC 自动加 1, 等于 02H, 这里指向下一条指令, 为取下一条指令作准备 3) 地址寄存器 AR 的内容 01H 通过地址总线 AB 送至存储器, 经地址译码器译码后选中存储器 01H 单元 4) CPU 发出存储器 读 命令 5) 在读命令的控制下, 所选中的 01H 存储单元的内容 01H 读至数据总线 DB 上 6) 读出的内容经数据总线 DB 送至数据寄存器 DR 7) 因为经过译码已经知道读出送到累加器 AL, 所以数据寄存器 DR 的内容 01H 通过内部数据总线送至累加器 AL 于是第一条指令执行完毕, 操作数 01H 被送到累加器 AL 中 51

2. 执行第二条指令的过程 -----(1) 取第二条指令 与取第一条指令同 2) 执行第二条指令 5 存储器 B0H 01H 04H 02H F4H 3E AB 3 AR 03 +1 2 03 1 PC PLA ID IR 内部数据总线 F 9 ALU 8 I 1 I 2 7 03H 10 A DB 6 4 读 02H DR CPU B 52

执行第二条指令 1) 将当前程序计数器 PC 或 IP 的内容 03H 送至地址寄存器 AR 2) PC 自动加 1, 等于 04H, 这里指向下一条指令, 为取下一条指令作准备 3) AR 通过地址总线把地址 03H 送至存储器, 经过译码, 选中相应的单元, 4) CPU 发出存储器 读 命令 5) 在读命令的控制下, 所选中的 03H 存储单元的内容 02H 读至数据总线 DB 上 6) 读出的内容经数据总线 DB 送至数据寄存器 DR 7) 数据寄存器 DR 的内容通过内部数据总线送至 ALU 的一个输入端 8) 累加器 AL 中的内容 01H 送 ALU 的另一个输入端, 在 ALU 中执行加法操作 9) 相加的结果 03H 由 ALU 输出至累加器 AL 中 53

3. 执行第三条指令的过程 第二条指令执行结束后, 程序计数器 PC 的值为 04H, 指向第三条指令在存储器中的首地址, 进入第三条指令的执行过程 第三条指令的处理与前面完全相同, 第三条指令的操作码 F4H(HLT) 取出经译码器译码后就停机 整个程序执行完毕 54

1.3 单片机及其特点 1.3.1 单片机的基本概念 单片机属于微型计算机的一种, 是把微型计算机中的微处理器 存储器 I/O 接口 定时器 / 计数器 串行接口 中断系统等电路集成在一块集成电路芯片上形成的微型计算机 因而被称为单片微型计算机, 简称为单片机 单片机按照用途可分为通用型和专用型两大类 在单片机使用上注意以下几个相互有相同点也有区别的概念 (1) 单板机 : (2) 单片机 :(3) 多板机 :

1.3.2 单片机的主要特点 (1) 在存储器结构上, 单片机的存储器采用哈佛 (Harvard) 结构 ROM 和 RAM 是严格分开的 ROM 称为程序存储器, 只存放程序 固定常数和数据表格 RAM 则为数据存储器, 用作工作区及存放数据 (2) 在芯片引脚上, 大部份采用分时复用技术 (3) 在内部资源访问上, 通过用特殊功能寄存器 (SFR) 的形式 (4) 在指令系统上, 采用面向控制的指令系统 (5) 内部一般都集成一个全双工的串行接口 (6) 单片机有很强的外部扩展能力 56

1.3.3 单片机发展及其主要品种 1. 4 位单片机 2. 8 位单片机 在 1978 年以前各厂家生产的 8 位单片机, 由于集成度的限制, 一般都没有串行接口, 只提供小范围的寻址空间 ( 小于 8KB), 性能相对较低, 称为低档 8 位单片机 在 1978 年以后, 集成电路水平提高, 出现了一些高性能的 8 位单片机, 它们的寻址能力达到了 64KB, 片内集成了 4-8KB 的 ROM, 片内除了带并行 I/O 口外, 还有串行 I/O 接口, 甚至有些还集成 A/D 转换器 这类单片机称为高档 8 位单片机 3. 16 位单片机 4. 32 位单片机 57

1.3.4 单片机的应用 1. 单机应用 (1) 工业自动化控制 (2) 智能仪器仪表 (3) 计算机外部设备和智能接口 (4) 家用电器 2. 多机应用 3. 单片机的等级 (1) 民用级或商用级 温度适应能力在 0 C~70 C, 适用于机房和一般的办公环境 (2) 工业级 温度适应能力在 -40 C~85 C, 适用于工厂和工业控制中, 对环境的适应能力较强 (3) 军用级 温度适应能力在 -65 C~125 C, 运用于环境条件苛刻, 温度变化很大的野外 主要用在军事上 58

作业 作业 : 1 2 3 5 8 10 11 59