
第1章微型计算机基础进入20世纪70年代,微型计算机开始登上历史舞台,并以不可阻挡的势头迅猛发展成为当今计算机发展的一个主流方向。当前,以微型计算机为代表的计算机已日益普及,其应用已深入社会的各个角落,极大地改变着人们的工作方式、学习方式和生活方式,成为信息时代的主要标志。本章主要是在《微型计算机文化基础》或《微型计算机原理》的基础上,复习有关微型计算机的基本内容:然后介绍一些单片机微控制器在应用过程中的一些基本概念,为后续掌握单片微控制器打下基础。。1.1微型计算机的定义与工作过程1.1.1 定义以微处理器为核心,配上大容量的半导体存储器及功能强大的可编程接口芯片,连上外设(包括键盘、显示器、打印机和软驱、光驱等外部存储器)及电源所组成的计算机,称为微型计算机,简称微型机或微机,有时又称为PC(PersonalComputer)或MC(MicroComputer)。微机加上系统软件,就构成了微型计算机系统(MCS,简称微机系统)。简单的说,某系统或设备只要有CPU,就可以称为微型计算机,如平常我们说的台式机、笔记本电脑、智能洗衣机、微波炉、单片机开发板、数字式仪器仪表、机器人、自动化生产线、内部含有CPU的芯片等。1.1.2冯·诺依曼体系计算机是一种能够存储程序,并能自动连续地执行程序,对各种数字化信息进行运算的现代化电子设备。首先,计算机是能够进行各种运算的设备。运算可分为两类:算术运算和逻辑运算。算术运算的对象是数值型数据,以四则运算为基础,许多复杂的数学问题都可以通过各种算法转换成若于四则运算:逻辑运算用来解决逻辑问题,如信息检索、逻辑判断和分析等。因此,计算机的工作实际上就是对各种信息的处理。其次,计算机如何表示这些信息呢?简单地说,是用数字代码(即二进制数)来表示名种信息,因此称为数字计算机。最后,计算机如何对这些信息进行处理呢?它采用的是一种存储程序的工作方式,即先编写程序,再由计算机将这些程序存储起来,然后自动连续地、快速地执行程序,从而实现各种运算处理。为了存储程序与数据,需要存储器;为了进行运算,需要运算器:为了输入程序和数据及输出运算结果,需要有输入设备和输出设备;此外还需要控制器对计算机各个部件的工作进行控制和管理。1
1 第1章 微型计算机基础 进入20世纪70年代,微型计算机开始登上历史舞台,并以不可阻挡的势头迅猛发展, 成为当今计算机发展的一个主流方向。当前,以微型计算机为代表的计算机已日益普及, 其应用已深入社会的各个角落,极大地改变着人们的工作方式、学习方式和生活方式,成 为信息时代的主要标志。本章主要是在《微型计算机文化基础》或《微型计算机原理》的基 础上,复习有关微型计算机的基本内容;然后介绍一些单片机微控制器在应用过程中的一些 基本概念,为后续掌握单片微控制器打下基础。 1.1 微型计算机的定义与工作过程 1.1.1 定义 以微处理器为核心,配上大容量的半导体存储器及功能强大的可编程接口芯片,连上 外设(包括键盘、显示器、打印机和软驱、光驱等外部存储器)及电源所组成的计算机,称 为微型计算机,简称微型机或微机,有时又称为PC(Personal Computer)或MC(Micro Computer)。微机加上系统软件,就构成了微型计算机系统(MCS,简称微机系统)。 简单的说,某系统或设备只要有CPU,就可以称为微型计算机,如平常我们说的台式 机、笔记本电脑、智能洗衣机、微波炉、单片机开发板、数字式仪器仪表、机器人、自动 化生产线、内部含有CPU的芯片等。 1.1.2 冯ꞏ诺依曼体系 计算机是一种能够存储程序,并能自动连续地执行程序,对各种数字化信息进行运算 的现代化电子设备。 首先,计算机是能够进行各种运算的设备。运算可分为两类:算术运算和逻辑运算。 算术运算的对象是数值型数据,以四则运算为基础,许多复杂的数学问题都可以通过各种 算法转换成若干四则运算;逻辑运算用来解决逻辑问题,如信息检索、逻辑判断和分析 等。因此,计算机的工作实际上就是对各种信息的处理。 其次,计算机如何表示这些信息呢?简单地说,是用数字代码(即二进制数)来表示各 种信息,因此称为数字计算机。 最后,计算机如何对这些信息进行处理呢?它采用的是一种存储程序的工作方式,即 先编写程序,再由计算机将这些程序存储起来,然后自动连续地、快速地执行程序,从而 实现各种运算处理。 为了存储程序与数据,需要存储器;为了进行运算,需要运算器;为了输入程序和数 据及输出运算结果,需要有输入设备和输出设备;此外还需要控制器对计算机各个部件的 工作进行控制和管理

上述要领是由计算机技术的先驱冯诺依曼提出的。他在1945年提出了数字计算机的若干思想,后被称为冯·诺依曼体系,这是计算机发展史上的一个里程碑。几十年来计算机的体系结构发生了深刻的变化,但冯·诺依曼体系的核心概念仍沿用至今。冯·诺依曼体系的要点归纳如下:①采用二进制代码表示数据和指令。②采用存储程序的工作方式,即先编写程序,然后存储程序,最后自动连续地执行程序。③由运算器、存储器、控制器、输入设备和输出设备组成计算机硬件系统。下面首先阐述其中两点:存储程序的工作方式、信息的数字化表示。(1)存储程序的工作方式计算机的工作最终体现为执行程序,计算机采用存储程序的工作方式,体现了计算机解决问题的过程。①编写程序为了使用计算机解决问题,需要先编写程序。在程序中规定了计算机需要做哪些工作,按什么步骤去做。程序还包括需要处理的原始数据,此外还规定了计算机何时从输入设备去获取数据。一件事情一般要分成几步来完成,每步执行的操作命令称为一条指令。计算机最终执行的程序是一系列指令序列,即若干指令的有序集合。换言之,我们事先编写的程序最终变成指令序列和原始数据。②存储程序编写完成的程序经输入设备送入计算机,存放在存储器中。编写程序时是用字符书写的,通过键盘将字符变成二进制编码,然后再送入计算机。③自动、连续地执行程序由于程序已存储在存储器中,启动计算机后,计算机就可以按照一定的顺序从存储器中逐条读取数据,按照指令的要求完成相应的操作,直到程序被执行完毕。原则上,程序在执行过程中不需要人工干预。当然,有些工作本身需要以人机对话的形式进行,例如通过计算机进行查询时,计算机通过屏幕向操作人员询问,操作人员通过键盘或鼠标进行选择。这种情况要求计算机能分段执行程序,之间允许用户进行人工干预。所以计算机在自动、连续地执行程序的过程中,往往允许使用者以外部请求方式进行干预。(2)信息的数字化表示上面讲到,现在广泛使用的计算机,其全称是电子式数字计算机。“电子”指计算机的主要部件是由电子电路组成的,计算机内传送与处理的信息是电子信号。例如,计算机中的算术运算单元(ALU)主要由加法器构成,而加法器由各种门电路(与门、非门等)组成。“数字”则表示计算机中的信息(控制信息和数据信息)均采用数字化表示方法。例如,二进制11001表示-9,01000001表示字符A等。1.1.3工作过程计算机的工作过程实际上是执行程序的过程,而程序是由一系列指令组成的,因此执行程序的过程就是按顺序执行指令的过程。2
2 上述要领是由计算机技术的先驱冯·诺依曼提出的。他在1945年提出了数字计算机的 若干思想,后被称为冯·诺依曼体系,这是计算机发展史上的一个里程碑。几十年来计算 机的体系结构发生了深刻的变化,但冯·诺依曼体系的核心概念仍沿用至今。冯·诺依曼 体系的要点归纳如下: ① 采用二进制代码表示数据和指令。 ② 采用存储程序的工作方式,即先编写程序,然后存储程序,最后自动连续地执行程 序。 ③ 由运算器、存储器、控制器、输入设备和输出设备组成计算机硬件系统。 下面首先阐述其中两点:存储程序的工作方式、信息的数字化表示。 (1)存储程序的工作方式 计算机的工作最终体现为执行程序,计算机采用存储程序的工作方式,体现了计算机 解决问题的过程。 ① 编写程序 为了使用计算机解决问题,需要先编写程序。在程序中规定了计算机需 要做哪些工作,按什么步骤去做。程序还包括需要处理的原始数据,此外还规定了计算机 何时从输入设备去获取数据。一件事情一般要分成几步来完成,每步执行的操作命令称为 一条指令。计算机最终执行的程序是一系列指令序列,即若干指令的有序集合。换言之, 我们事先编写的程序最终变成指令序列和原始数据。 ② 存储程序 编写完成的程序经输入设备送入计算机,存放在存储器中。编写程序时 是用字符书写的,通过键盘将字符变成二进制编码,然后再送入计算机。 ③ 自动、连续地执行程序 由于程序已存储在存储器中,启动计算机后,计算机就可 以按照一定的顺序从存储器中逐条读取数据,按照指令的要求完成相应的操作,直到程序 被执行完毕。原则上,程序在执行过程中不需要人工干预。当然,有些工作本身需要以人 机对话的形式进行,例如通过计算机进行查询时,计算机通过屏幕向操作人员询问,操作 人员通过键盘或鼠标进行选择。这种情况要求计算机能分段执行程序,之间允许用户进行 人工干预。所以计算机在自动、连续地执行程序的过程中,往往允许使用者以外部请求方 式进行干预。 (2)信息的数字化表示 上面讲到,现在广泛使用的计算机,其全称是电子式数字计算机。 “电子”指计算机的主要部件是由电子电路组成的,计算机内传送与处理的信息是电 子信号。例如,计算机中的算术运算单元(ALU)主要由加法器构成,而加法器由各种门电 路(与门、非门等)组成。 “数字”则表示计算机中的信息(控制信息和数据信息)均采用数字化表示方法。例 如,二进制11001表示–9,01000001表示字符A等。 1.1.3 工作过程 计算机的工作过程实际上是执行程序的过程,而程序是由一系列指令组成的,因此执 行程序的过程就是按顺序执行指令的过程

通常,计算机要运行某个程序时,该程序预先要调入内存的一系列单元中,在程序执行过程中完全由计算机自动执行而不需要人工干预,具体包括下列几步。(1)取出指令从存储器某个地址中取出要执行的指令送到CPU内部的指令寄存器暂时保存。(2)分析指令从程序的首地址开始把指令寄存器中的指令送到指令译码器,分析出该指令对应启动计算机执行程序的操作。从存储器中取出一条指令(3)执行指令→根据指令译码结果,向各个部件发出相应的控制信号,完成分析指令指令规定的各种操作。执行指令(4)形成下一条指令地址+为执行下一条指令做好准备,即形成下一条指令的地址。形成下一条指令的地址具体过程如图1-1所示。图1-1程序的执行过程1.2计算机中的数制和编码基础计算机的工作过程就是对数据进行处理。计算机是一个典型的数字化设备,它只能识别0和1,所有的计算机都是以二进制数的形式进行算术运算和逻辑操作的。1.2.1计算机中的数制及转换1.计算机中的数制(参阅资料)计算机最早是作为一种计算工具出现的,所以最基本的功能是对数进行加工和处理。在使用微型计算机时常用的计数制有二进制数、十六进制数、十进制数3种。(1)十进制数(Decimal)(2)二进制数(Binary)(3)十六进制数(Hexadecimal)十进制数、二进制数和十六进制数之间的关系如表1-1所示。表1-1十进制、二进制数及十六进制数对照表+进03256101512制-进000011110001001000110100010101100111H1100制+水C进制为了区别十进制数、二进制数及十六进制数三种数制,可以在数的后面加一个字母。规定B(binary)表示二进制数,D(decimal)表示十进制数,H(hexadecimal)表示十六3
3 通常,计算机要运行某个程序时,该程序预先要调入内存的一系列单元中,在程序执 行过程中完全由计算机自动执行而不需要人工干预,具体包括下列几步。 (1)取出指令 从存储器某个地址中取出要执行的指令送到CPU内部的指令寄存器暂时保存。 (2)分析指令 把指令寄存器中的指令送到指令译码器,分析出该指令对应 的操作。 (3)执行指令 根据指令译码结果,向各个部件发出相应的控制信号,完成 指令规定的各种操作。 (4)形成下一条指令地址 为执行下一条指令做好准备,即形成下一条指令的地址。 具体过程如图1-1所示。 1.2 计算机中的数制和编码基础 计算机的工作过程就是对数据进行处理。计算机是一个典型的数字化设备,它只能识 别0和1,所有的计算机都是以二进制数的形式进行算术运算和逻辑操作的。 1.2.1 计算机中的数制及转换 1.计算机中的数制(参阅资料) 计算机最早是作为一种计算工具出现的,所以最基本的功能是对数进行加工和处理。 在使用微型计算机时常用的计数制有二进制数、十六进制数、十进制数3种。 (1)十进制数(Decimal) (2)二进制数(Binary) (3)十六进制数(Hexadecimal) 十进制数、二进制数和十六进制数之间的关系如表1-1所示。 表1-1 十进制、二进制数及十六进制数对照表 十 进 制 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 二 进 制 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 十 六 进 制 0 1 2 3 4 5 6 7 8 9 A B C D E F 为了区别十进制数、二进制数及十六进制数三种数制,可以在数的后面加一个字母。 规定B(binary)表示二进制数,D(decimal)表示十进制数,H(hexadecimal)表示十六 图 1-1 程序的执行过程

进制数,其中十进制数后面的字母D可以省略2原码、反码、补码1.2.2数据在计算机内采用符号数字化处理后,机器可表示并识别带符号的数据。为了改进运算方法、简化控制电路,人们研究出多种有符号数的编码形式,最常用的有三种方法即原码、反码、补码表示法。8位二进制数用来表示有符号数、原码、反码和补码,如表1-2所示。从表1-2可以看出,8位二进制数,无符号数表示范围是0255,有符号数原码表示范围中-127~+127,反码表示范围是-127~+127,补码表示范围是-128~+127。计算机中的数是用补码表示的。表1-2原码、反码和补码表有符号数二进制数无符号数反码原码补码0+0+0+0000000001+100000001+1+12+2+2+200000010..1260111 1110+126+126+126127+127+1270111 1111+127-010000000128127 128129-110000001-126- 127253-125-2-31111 1101254-126-1-21111 1110-01111 1111255127-11.2.3定点数和浮点数(参阅有关资料)计算机中运算的数有整数,也有小数。通常有两种规定:一种是规定小数点的位置固定不变,这时的机器数称为定点数;另一种是小数点的位置可以浮动,这时的机器数称为浮点数。微型计算机中常使用定点数。1.定点数所谓定点法,是指小数点在数中的位置是固定不变的,以定点法表示的实数称为定点数。根据小数点位置的固定方法不同,又可分为定点整数和定点小数表示法。前面介绍的整数均为定点整数,可以认为小数点固定在数的最低位之后。2.浮点数所谓浮点数,是指计算机中数的小数点位置不是固定的,或者说是“浮动”的。在计算机中,浮点数法一般用来表示实数,可以采用“阶码表示法”来表示浮点数,它由整数部分和小数部分组成,一个实数可以表示成一个纯小数和一个乘幂之积。4
4 进制数,其中十进制数后面的字母D可以省略。 1.2.2 原码、反码、补码 数据在计算机内采用符号数字化处理后,机器可表示并识别带符号的数据。为了改进 运算方法、简化控制电路,人们研究出多种有符号数的编码形式,最常用的有三种方法, 即原码、反码、补码表示法。 8位二进制数用来表示有符号数、原码、反码和补码,如表1-2所示。 从表1-2可以看出,8位二进制数,无符号数表示范围是0~255,有符号数原码表示范 围中–127~+127,反码表示范围是–127~+127,补码表示范围是–128~+127。计算机中 的数是用补码表示的。 表1-2 原码、反码和补码表 二进制数 无符号数 有符号数 原码 反码 补码 0000 0000 0000 0001 0000 0010 ··· 0111 1110 0111 1111 1000 0000 1000 0001 ··· 1111 1101 1111 1110 1111 1111 0 1 2 126 127 128 129 253 254 255 +0 +1 +2 +126 +127 –0 –1 –125 –126 –127 +0 +1 +2 +126 +127 –127 –126 –2 –1 –0 +0 +1 +2 +126 +127 –128 –127 –3 –2 –1 1.2.3 定点数和浮点数(参阅有关资料) 计算机中运算的数有整数,也有小数。通常有两种规定:一种是规定小数点的位置固 定不变,这时的机器数称为定点数;另一种是小数点的位置可以浮动,这时的机器数称为 浮点数。微型计算机中常使用定点数。 1.定点数 所谓定点法,是指小数点在数中的位置是固定不变的,以定点法表示的实数称为定点 数。根据小数点位置的固定方法不同,又可分为定点整数和定点小数表示法。前面介绍的 整数均为定点整数,可以认为小数点固定在数的最低位之后。 2.浮点数 所谓浮点数,是指计算机中数的小数点位置不是固定的,或者说是“浮动”的。在计 算机中,浮点数法一般用来表示实数,可以采用“阶码表示法”来表示浮点数,它由整数 部分和小数部分组成,一个实数可以表示成一个纯小数和一个乘幂之积

采用浮点数最大的特点是,比定点数表示的范围大。1.2.4计算机中常用的编码计算机除了用于数值计算外,还要进行大量的文字信息处理,也就是要对表达各种文字信息的符号进行加工。例如计算机和外设如键盘、(字符)显示器、打印机之间的通信都采用字符方式输入/输出。目前计算机中最常用的两种编码是美国信息交换标准代码(ASCII码)和二-十进制编码(BCD码)。1.美国信息交换标准代码(ASCII码)ASCII(AmericanStandardCodefornformation-Interchange)码是美国信息交换标准代码的简称,主要给西文字符进行编码。它采用7位二进制数表示一个字符,包括32个标点符号,10个阿拉伯数字,52个英文大小写字母,34个控制符号,共128个。编码与字符之间的对应关系如附录A所示。在计算机系统中,存储单元的长度通常为8位二进制数(即一个字节),为了存取方便规定一个存储单元存放一个ASCII码,其中低7位表示字母本身的编码,第8位(即bit7)用做奇偶校验位或规定为零(通常如此)。因此,也可以认为ASCII码的长度为8位。奇偶校验的主要目的是用于在数据传输过程中,检测接收方的数据是否正确。收发双方预约为何种校验,接收方收到数据后检验1的个数,判断是否与预约的校验相符,尚若不符,则说明传输出错,可请求重新发送。奇校验时,bit7的取值应使得8位ASCII码中1的个数为奇数;偶校验时,bit7的取值应使得ASCII码中I的个数是偶数。例如:“8”的奇校验ASCII码为00111000B,偶校验ASCII码为10111000B。“B”的奇校验ASCII码为11000010B,偶校验ASCII码为01000010B。2.BCD码(二进制编码的十进制数)十进制毕竞是人们最习惯的计数方式,在向计算机输入数据时,常用十进制数输入,但计算机只识别二进制数,因此每1位十进制必须用二进制数表示。1位十进制数包含0~9十个数码,必须用4位二进制数表示,这样就需要确定0~9与4位二进制数0000B~1111B之间的对应关系,其中较常用的8421BCD码规定了十进制数0~9与4位二进制数编码之间的对应关系,见表1-3。表1-3十进制数与4位二进制数编码之间的对应关系十进制数8421BCD码十进制数8421BCD码00000501011000160110270010011138001110004010091001注:在BCD码中,不使用1010B(OAH)~1111B(OFH)。计算机中存储BCD码的形式有两种:压缩BCD码和非压缩BCD码。(1)压缩BCD码压缩BCD码用4位二进制数表示1位十进制数,一个字节可以表示2位十进制数。例如5
5 采用浮点数最大的特点是,比定点数表示的范围大。 1.2.4 计算机中常用的编码 计算机除了用于数值计算外,还要进行大量的文字信息处理,也就是要对表达各种文 字信息的符号进行加工。例如计算机和外设如键盘、(字符)显示器、打印机之间的通信都 采用字符方式输入/输出。目前计算机中最常用的两种编码是美国信息交换标准代码(ASCII 码)和二十进制编码(BCD码)。 1.美国信息交换标准代码(ASCII码) ASCII(American Standard Code for nformationInterchange)码是美国信息交换标 准代码的简称,主要给西文字符进行编码。它采用7位二进制数表示一个字符,包括32个标 点符号,10个阿拉伯数字,52个英文大小写字母,34个控制符号,共128个。编码与字符之 间的对应关系如附录A所示。 在计算机系统中,存储单元的长度通常为8位二进制数(即一个字节),为了存取方便, 规定一个存储单元存放一个ASCⅡ码,其中低7位表示字母本身的编码,第8位(即bit7)用 做奇偶校验位或规定为零(通常如此)。因此,也可以认为ASCII码的长度为8位。 奇偶校验的主要目的是用于在数据传输过程中,检测接收方的数据是否正确。收发双 方预约为何种校验,接收方收到数据后检验1的个数,判断是否与预约的校验相符,倘若不 符,则说明传输出错,可请求重新发送。奇校验时,bit7的取值应使得8位ASCII码中1的个 数为奇数;偶校验时,bit7的取值应使得ASCII码中1的个数是偶数。例如: “8”的奇校验ASCII码为00111000B,偶校验ASCII码为10111000B。 “B”的奇校验ASCII码为11000010B,偶校验ASCII码为01000010B。 2.BCD码(二进制编码的十进制数) 十进制毕竟是人们最习惯的计数方式,在向计算机输入数据时,常用十进制数输入, 但计算机只识别二进制数,因此每1位十进制必须用二进制数表示。1位十进制数包含0~9 十个数码,必须用4位二进制数表示,这样就需要确定0~9与4位二进制数0000B~1111B之 间的对应关系,其中较常用的8421BCD码规定了十进制数0~9与4位二进制数编码之间的对 应关系,见表1-3。 表1-3 十进制数与4位二进制数编码之间的对应关系 十进制数 8421BCD码 十进制数 8421BCD码 0 0000 5 0101 1 0001 6 0110 2 0010 7 0111 3 0011 8 1000 4 0100 9 1001 注:在BCD码中,不使用1010B(0AH)~1111B(0FH)。 计算机中存储BCD码的形式有两种:压缩BCD码和非压缩BCD码。 (1)压缩BCD码 压缩BCD码用4位二进制数表示1位十进制数,一个字节可以表示2位十进制数。例如

10010111B表示十进制数97。(2)非压缩BCD码非压缩BCD码用8位二进制数表示1位十进制数,高4位总为0000,低4位的00001001表示09。例如00001001B表示十进制数9。尽管BCD码比较直观,但BCD码与二进制数之间的转换并不方便,需要转换成十进数后,才能转换为二进制数,反之亦然。前面介绍了在使用计算机时二进制数、十进制数、十六进制数、ASCII码、BCD码以及带符号数的表示等问题,这里要注意微型计算机能处理的数据只有二进制数,计算机并不认识什么正数、负数、BCD码、ASCII码等,计算机中数的表现形式只有二进制数,其他的数制和性质需要人们来进行分析与说明。如在某存储器中存放一个二进制数11111111B(OFFH),这个数多大?这要看人们如何看了,如果是一个无符号数,就是255:如果是一个有符号数,就是1;如果是个BCD码,就是一个无效的数;如果是个ASCII码,就代表“DEL”键的ASCII码值。1.3微型计算机结构微型计算机是由硬件(Hardware)和软件(Software)两大部分组成的。硬件是由电子部件和机电装置所组成的计算机实体,其基本功能是接受计算机程序,并在程序控制下完成信息输入、处理和结果输出等任务。软件是指为计算机运行服务的全部技术资料和各种程序,以保证计算机硬件的功能得以充分发挥。1.3.1微型计算机硬件结构概述微型计算机在硬件上由运算器、控制器、存储器、输入设备及输出设备五大部分组成,如图1-7所示。数据数搏输入设备运算器存储器K1数据编伊聘输入命令三A命令输出设备飞控制器飞输出命令!CPU内存外围设备接口主机图1-7微型计算机硬件结构框图运算器是计算机处理信息的主要部分;控制器控制计算机各部件自动地、协调一致地工作;存储器是存放数据与程序的部件;输入设备用来输入数据与程序,常用的输入设备有键盘、光电输入机等;输出设备将计算机的处理结果用数字、图形等形式表示出来,常用的输出设备有显示终端、数码管、打印机、绘图仪等。通常把运算器、控制器、存储器这三部分称为计算机的主机,而输入、输出设备则称为计算机的外部设备(简称外设)。由于运算器、控制器是计算机处理信息的关键部件,所6
6 10010111B表示十进制数97。 (2)非压缩BCD码 非压缩BCD码用8位二进制数表示1位十进制数,高4位总为0000,低4位的0000~1001表 示0~9。例如00001001B表示十进制数9。 尽管BCD码比较直观,但BCD码与二进制数之间的转换并不方便,需要转换成十进数 后,才能转换为二进制数,反之亦然。 前面介绍了在使用计算机时二进制数、十进制数、十六进制数、ASCII码、BCD码以及 带符号数的表示等问题,这里要注意微型计算机能处理的数据只有二进制数,计算机并不 认识什么正数、负数、BCD码、ASCII码等,计算机中数的表现形式只有二进制数,其他的 数制和性质需要人们来进行分析与说明。如在某存储器中存放一个二进制数11111111B (0FFH),这个数多大?这要看人们如何看了,如果是一个无符号数,就是255;如果是一 个有符号数,就是 1;如果是个BCD码,就是一个无效的数;如果是个ASCII码,就代表 “DEL”键的ASCII码值。 1.3 微型计算机结构 微型计算机是由硬件(Hardware)和软件(Software)两大部分组成的。硬件是由电子 部件和机电装置所组成的计算机实体,其基本功能是接受计算机程序,并在程序控制下完 成信息输入、处理和结果输出等任务。软件是指为计算机运行服务的全部技术资料和各种 程序,以保证计算机硬件的功能得以充分发挥。 1.3.1 微型计算机硬件结构概述 微型计算机在硬件上由运算器、控制器、存储器、输入设备及输出设备五大部分组 成,如图1-7所示。 图1-7 微型计算机硬件结构框图 运算器是计算机处理信息的主要部分;控制器控制计算机各部件自动地、协调一致地 工作;存储器是存放数据与程序的部件;输入设备用来输入数据与程序,常用的输入设备 有键盘、光电输入机等;输出设备将计算机的处理结果用数字、图形等形式表示出来,常 用的输出设备有显示终端、数码管、打印机、绘图仪等。 通常把运算器、控制器、存储器这三部分称为计算机的主机,而输入、输出设备则称 为计算机的外部设备(简称外设)。由于运算器、控制器是计算机处理信息的关键部件,所

以常将它们合称为中央处理单元CPU(CentralProcessingUnit)。这样,微型计算机结构就可以用图1-8来进行表示。微型计算机由CPU、存储器、输入/输出(I/O)接口电路构成,各部分(芯片)之间通过总线(Bus)连接。广地址总线微处理器存储器10接口众个众个数据总线X控制总线图1-8微型计算机结构将微处理器、存储器、I/0接口电路以及简单的输入、输出设备组装在一块印制电路板上,称为单板微型计算机,简称单板机。将微处理器、存储器、I/O接口电路集成在一块芯片上,称为单片微型计算机,简称单片机。CPU、存储器、I/O口是组成微型计算机的基本部分,在使用时厂家是以芯片的形式或I/O接口电路的形式提供给使用者的。CPU、存储器、I/O口式通过总线联系在一起的。1.微处理器(CPU)微处理器是利用微电子技术将计算机的核心部件(运算器和控制器)集中做在一块集成电路上的一个独立芯片。它具有解释指令、执行指令和与外界交换数据的能力。该芯片称为微处理器或微处理机(Microprocessor),也称中央处理器CPU。在目前情况下,无论哪种CPU,内部基本组成总是大同小异的,其内部包括三部分:运算器、控制器、内部寄存器阵列(工作寄存器组),如图1-9所示。地址总线数据总线控制总线升 内部总线T运算器控制器寄存器阵列图1-9微处理器结构图(1)运算器运算器是对信息进行加工、处理及运算的逻辑部件。它由算术逻辑运算单元、累加器A、暂存寄存器、标志寄存器、二-十进制调整电路等组成。新型CPU的运算器还可以完成各种高精度的浮点运算。(2)控制器控制器包括指令寄存器、指令译码器和定时与控制电路三部分。计算机工作时,由定时与控制电路按照一定的时间顺序发出一系列控制信号,使计算机各部件能按一定的时间节拍协调一致地工作。控制器是计算机控制和调度的中心,计算机的各种操作都是在控制器的控制下进行的。(3)内部寄存器阵列内部寄存器阵列由多个功能不同的寄存器构成,用以存放参加处理和运算的操作数、7
7 以常将它们合称为中央处理单元CPU(Central Processing Unit)。 这样,微型计算机结构就可以用图1-8来进行表示。微型计算机由CPU、存储器、输入/ 输出(I/O)接口电路构成,各部分(芯片)之间通过总线(Bus)连接。 图1-8 微型计算机结构 将微处理器、存储器、I/O接口电路以及简单的输入、输出设备组装在一块印制电路板 上,称为单板微型计算机,简称单板机。将微处理器、存储器、I/O接口电路集成在一块芯 片上,称为单片微型计算机,简称单片机。 CPU、存储器、I/O口是组成微型计算机的基本部分,在使用时厂家是以芯片的形式或 I/O接口电路的形式提供给使用者的。CPU、存储器、I/O口式通过总线联系在一起的。 1.微处理器(CPU) 微处理器是利用微电子技术将计算机的核心部件(运算器和控制器)集中做在一块集成 电路上的一个独立芯片。 它具有解释指令、执行指令和与外界交换数据的能力。该芯片称为微处理器或微处理 机(Microprocessor),也称中央处理器CPU。在目前情况下,无论哪种CPU,内部基本组成 总是大同小异的,其内部包括三部分:运算器、控制器、内部寄存器阵列(工作寄存器 组),如图1-9所示。 (1)运算器 运算器是对信息进行加工、处理及运算的逻辑部件。它由算术逻辑运算单元、累加器 A、暂存寄存器、标志寄存器、二十进制调整电路等组成。新型CPU的运算器还可以完成各 种高精度的浮点运算。 (2)控制器 控制器包括指令寄存器、指令译码器和定时与控制电路三部分。 计算机工作时,由定时与控制电路按照一定的时间顺序发出一系列控制信号,使计算 机各部件能按一定的时间节拍协调一致地工作。 控制器是计算机控制和调度的中心,计算机的各种操作都是在控制器的控制下进行 的。 (3)内部寄存器阵列 内部寄存器阵列由多个功能不同的寄存器构成,用以存放参加处理和运算的操作数、 图 1-9 微处理器结构图

数据处理的中间结果和最终结果等。寄存器可分为专用寄存器和通用寄存器。专用寄存器的作用是固定的,如堆栈指针寄存器、标志寄存器、指令指针寄存器等;而通用寄存器可由编程者依据需要规定其用途。多次使用的操作数和中间结果可暂时存放在寄存器中,避免对存储器的频繁访问,从而缩短指令执行时间,同时也给编程者带来很大的方便。在使用CPU时,用户主要关注的是,在了解CPU功能的基础上对CPU内部寄存器的使用。因此,要正确使用CPU,就必须掌握CPU内部寄存器的名字(符号)、大小(存放的二进制位数)及特殊功能。(4)地址总线地址总线是CPU用来向存储器或I/O端口传送地址信息的,是三态单向总线。地址总线的宽度决定了CPU可管理的存储器和I/O端口地址的数量。8条地址线用A7~A0表示,A7为最高位地址线,A0为最低位地址线,最大寻址范围为28=256;16条地址线用A15~A0表示,A15为最高位地址线,A0为最低位地址线,最大寻址范围为216=65536=64K。通过地址总线确定要操作的存储单元或I/O端口的地址。(2)数据总线数据总线是CPU与存储器及外设交换数据的通路,是三态双向总线。数据总线的位数与微处理器的位数相同,一般有8位、16位、32位等。8位数据线用D7~D0表示,D7为最高有效位,DO为最低有效位;16位数据线用D15~DO表示,D15为最高有效位,DO为最低有效位。最高有效位用MSB表示,最低有效位用LSB表示。通常定义8位二进制数位一个字节(BYTE),这样就有了半字节(4位)数据、单字节(8位)数据,双字节(16位、字)数据等。(3)控制总线控制总线是用来传输控制信号的,传送方向依据具体控制信号而定,如CPU向存储器或I/O接口电路输出读信号、写信号、地址有效信号,而I/O接口部件向CPU输入复位信号、中断请求信号等。控制总线的宽度根据系统需要而定。总线在微型计算机硬件结构中,就是在微型计算机各芯片之间或芯片内部各部件之间传输信息的一组公共通信线。微型计算机采用总线结构后,芯片之间不需要单独走线,这就大大减少了连接线的数量。采用总线结构后,系统中各功能部件间的相互关系转变为各部件面向总线的单一关系,符合总线标准的设备都可以连接到系统中,使系统功能得到折展。在现代专用的嵌入式微型计算机系统设计中,不是对CPU的选择,而是对单片机的选择,但要特别关注CPU数据总线的位数。CPU是微型计算机的核心,它的性能决定了整个微型计算机的各项关键指标。微处理器本身不能构成独立工作的系统,也不能独立执行程序,必须配上存储器、外部输入/输出接口构成一台微型计算机方能工作。2.存储器存储器是微型计算机的重要组成部分,是用来存放程序和数据的,计算机有了存储器才具备记忆能力。(1)存储器的基本组成8
8 数据处理的中间结果和最终结果等。寄存器可分为专用寄存器和通用寄存器。专用寄存器 的作用是固定的,如堆栈指针寄存器、标志寄存器、指令指针寄存器等;而通用寄存器可 由编程者依据需要规定其用途。多次使用的操作数和中间结果可暂时存放在寄存器中,避 免对存储器的频繁访问,从而缩短指令执行时间,同时也给编程者带来很大的方便。 在使用CPU时,用户主要关注的是,在了解CPU功能的基础上对CPU内部寄存器的使用。 因此,要正确使用CPU,就必须掌握CPU内部寄存器的名字(符号)、大小(存放的二进制位 数)及特殊功能。 (4)地址总线 地址总线是CPU用来向存储器或I/O端口传送地址信息的,是三态单向总线。地址总线 的宽度决定了CPU可管理的存储器和I/O端口地址的数量。8条地址线用A7~A0表示,A7为最 高位地址线,A0为最低位地址线,最大寻址范围为28 = 256;16条地址线用A15~A0表示, A15为最高位地址线,A0为最低位地址线,最大寻址范围为216 = 65 536 = 64K。通过地址 总线确定要操作的存储单元或I/O端口的地址。 (2)数据总线 数据总线是CPU与存储器及外设交换数据的通路,是三态双向总线。数据总线的位数与 微处理器的位数相同,一般有8位、16位、32位等。8位数据线用D7~D0表示,D7为最高有 效位,D0为最低有效位;16位数据线用D15~D0表示,D15为最高有效位,D0为最低有效 位。最高有效位用MSB表示,最低有效位用LSB表示。 通常定义8位二进制数位一个字节(BYTE),这样就有了半字节(4位)数据、单字节(8 位)数据,双字节(16位、字)数据等。 (3)控制总线 控制总线是用来传输控制信号的,传送方向依据具体控制信号而定,如CPU向存储器或 I/O接口电路输出读信号、写信号、地址有效信号,而I/O接口部件向CPU输入复位信号、中 断请求信号等。控制总线的宽度根据系统需要而定。 总线在微型计算机硬件结构中,就是在微型计算机各芯片之间或芯片内部各部件之间传 输信息的一组公共通信线。微型计算机采用总线结构后,芯片之间不需要单独走线,这就 大大减少了连接线的数量。采用总线结构后,系统中各功能部件间的相互关系转变为各部 件面向总线的单一关系,符合总线标准的设备都可以连接到系统中,使系统功能得到扩 展。 在现代专用的嵌入式微型计算机系统设计中,不是对CPU的选择,而是对单片机的选择, 但要特别关注CPU数据总线的位数。 CPU是微型计算机的核心,它的性能决定了整个微型计算机的各项关键指标。微处理器 本身不能构成独立工作的系统,也不能独立执行程序,必须配上存储器、外部输入/输出接 口构成一台微型计算机方能工作。 2.存储器 存储器是微型计算机的重要组成部分,是用来存放程序和数据的,计算机有了存储器 才具备记忆能力。 (1)存储器的基本组成

存储器由一些能够表示二进制数0和1状态的物理器件组成,这些器件本身具有记忆的功能,如电容、双稳态电路等。这些具有记忆功能的物理器件或者电路就构成了一个基本存储单元。每个基本存储单元可以保存一位二进制信息,若干个基本存储器单元构成一个存储单元,通常一个存储单元由8个基本存储单元构成,即一个存储单元可以存储8个二进制信息,许多存储单元组织在一起构成了存储器。形象地说,把学校的一座宿舍楼比做存储器的话,那么宿舍楼中的各个宿舍就是存储单元,各个宿舍中的每张床就是基本存储单元。存储器各部分组成之间的关系如图1-10所示。1个基本存储单元(1位二进制数)...1个存储单元(8位二进制数)1个基本存储单元(1位二进制数)1存储器:(多个8位二进制数)11个基本存储单元(1位二进制数)1个存储单元..(8位二进制数)1个基本存储单元(1位二进制数)图1-10存储器组织关系图(2)存储器的分类存储器的分类如图1-11所示内部存储器:内部存储器也称为内存,是主存储器,位于计算机主机的内部。它用来存放当前正在使用的或经常使用的程序和数据,它由半导体集成电路芯片所组成。内存工作速度快,可以直接与CPU交换数据、参与运算。但内存的容量有限,通常为几十到几百KB字节(1K=1024个)。RAM-一静态RAM一内存储器动态RAM一掩模式ROMROM-一可编程PROM存储器一一紫外线擦除EPROM一电擦除EEPROM一闪存FlashMemory一外存储器,一磁带厂磁盘图1-11存储器分类图外部存储器:外部存储器也称为外存,是辅助存储器。外存的特点是大容量,所存储的信息既可以修改,也可以保存,存取速度较慢,要由专用的设备来管理。如磁带、磁盘、光盘等,一盘磁带可存储150KB字节的信息,一片硬磁盘可存储数十兆字节的信息。磁带、磁盘的数量可随意增加。从这个意义上说,外存储器的容量无限,但外存的工作速度低,它们不能直接参与计算机的运算,一般情况下外存只与内存成批交换信息。也就是说,外存储器仅起到扩大计算机存储容量的作用。在计算机中,外存储器是外部设备的组成部分。在专用的微型计算机系统设计中一般应用的是内存储器。①随机存取存储器RAM:随机存取存储器RAM又称读写存储器,它的数据读取、存入时间都很短,因此计算机运行时,既可以从RAM中读数据,又可以将数据写入RAM。但掉电后9
9 存储器由一些能够表示二进制数0和1状态的物理器件组成,这些器件本身具有记忆的 功能,如电容、双稳态电路等。这些具有记忆功能的物理器件或者电路就构成了一个基本 存储单元。每个基本存储单元可以保存一位二进制信息,若干个基本存储器单元构成一个 存储单元,通常一个存储单元由8个基本存储单元构成,即一个存储单元可以存储8个二进 制信息,许多存储单元组织在一起构成了存储器。形象地说,把学校的一座宿舍楼比做存 储器的话,那么宿舍楼中的各个宿舍就是存储单元,各个宿舍中的每张床就是基本存储单 元。存储器各部分组成之间的关系如图1-10所示。 图1-10 存储器组织关系图 (2)存储器的分类 存储器的分类如图1-11所示 内部存储器:内部存储器也称为内存,是主存储器,位于计算机主机的内部。它用来 存放当前正在使用的或经常使用的程序和数据,它由半导体集成电路芯片所组成。内存工 作速度快,可以直接与CPU交换数据、参与运算。但内存的容量有限,通常为几十到几百KB 字节(1K=1024个)。 存储器 内存储器 RAM ROM 外存储器 磁带 磁盘 静态 RAM 动态 RAM 掩模式 ROM 可编程 PROM 紫外线擦除 EPROM 电擦除 EEPROM 闪存 Flash Memory 图1-11 存储器分类图 外部存储器:外部存储器也称为外存,是辅助存储器。外存的特点是大容量,所存储 的信息既可以修改,也可以保存,存取速度较慢,要由专用的设备来管理。如磁带、磁 盘、光盘等,一盘磁带可存储150KB字节的信息,一片硬磁盘可存储数十兆字节的信息。磁 带、磁盘的数量可随意增加。从这个意义上说,外存储器的容量无限,但外存的工作速度 低,它们不能直接参与计算机的运算,一般情况下外存只与内存成批交换信息。也就是 说,外存储器仅起到扩大计算机存储容量的作用。在计算机中,外存储器是外部设备的组 成部分。 在专用的微型计算机系统设计中一般应用的是内存储器。 ①随机存取存储器RAM:随机存取存储器RAM又称读写存储器,它的数据读取、存入时 间都很短,因此计算机运行时,既可以从RAM中读数据,又可以将数据写入RAM。但掉电后

RAM中存放的信息将丢失。RAM适宜存放输入数据、中间结果及最后的运算结果,因此又被称为数据存储器。随机存储器有静态RAM和动态RAM两种。静态RAM用触发器存储信息,只要不断电,信息就不会丢失。动态RAM依靠电容存储信息,充电后为“1”,放电后为“0”。由于集成电路中电容的容量很小,且存在泄漏电流的放电作用,高电平的保持时间只有几mS。为了保存信息,每隔1~2mS必须对高电平的电容重新充电,这称为动态RAM的定时刷新。动态RAM的集成度高;静态RAM的集成度低、功耗大,优点是省去了刷新电路。在专用的微型计算机系统设计时,一般只用静态的RAM就可以满足要求。②只读存储器ROM:只读存储器ROM读出一个数据的时间为数百nS,有时也可改写,但写入一个数据的时间长达数十mS。因此在计算机运行时只能执行读操作。掉电后ROM中存放的数据不会丢失。ROM适宜存放程序、常数、表格等,因此又称为程序存储器。只读存储器有以下五类:电擦除可编程只读存储器EEPROM(ElectricallyErasablePROM):由于采用电擦除方式,而且擦除、写入、读出的电源都用+5V,故能在应用系统中在线改写。但目前写入时间较长,约需10ms左右,读出时间约为几百nS。闪烁存储器(FlashMemory):快速擦写存储器(FlashMemory)(简称Flash)是20世纪80年代中期推出的新型器件。它可以在联机条件下,即在计算机内进行擦除、改写,因而称为快擦写型存储器或闪烁存储器。它具有芯片整体或分区电擦除和可再编程功能从而使它成为性能价格比和可靠性最高的可读写、非易失性存储器。主要性能特点:·高速芯片整体电擦除:芯片整体擦除时间约1s,而一般的EPROM需要15分钟以上。·高速编程:采用快速脉冲编程方法,编程时间短。?最少1万次擦除/编程周期,通常可达到10万次。早期的Flash采用12V编程电压,改进后在Flash内部集成了1个DC/DC变换器,可以采用单一的5V电压供电。高速度的存储器访问:最大读出时间不超过200μs。高速的Flash的读出时间了达60us。?低功耗:最大工作电流30mA,备用状态下的最大电流100μA。·密度大,价格低,性价比高。由于Flash的突出性能,使它发展迅速。Intel公司已决定由Flash来替代EEPROM,不再生产EEPROM。由于它的非易失性和可以长期地反复使用,目前已经广泛应用于IC卡、单片机系统和其它电子设备中。大容量的Flash也可以“固态盘”的形式代替软盘或硬盘作为海量存储器用。在设计专用的微型计算机系统时,主要使用的是内存储器。在内存储器中主要用的是静态的RAM和电擦除EEPROM。半导体存储器在使用时,厂家是以芯片的形式提供给使用者的。(3)CPU对存储器的操作一个存储器单元存放的信息称为该存储单元的内容。数据和程序均是以二进制数形式存放的,不论是8位还是16位机,都是以8位二进制数作为一个字节存放在存储器中的。10
10 RAM中存放的信息将丢失。RAM适宜存放输入数据、中间结果及最后的运算结果,因此又被 称为数据存储器。 随机存储器有静态RAM和动态RAM两种。静态RAM用触发器存储信息,只要不断电,信息 就不会丢失。动态RAM依靠电容存储信息,充电后为“1”,放电后为“0”。由于集成电路 中电容的容量很小,且存在泄漏电流的放电作用,高电平的保持时间只有几ms。为了保存 信息,每隔1~2ms必须对高电平的电容重新充电,这称为动态RAM的定时刷新。动态RAM的 集成度高;静态RAM的集成度低、功耗大,优点是省去了刷新电路。在专用的微型计算机系 统设计时,一般只用静态的RAM就可以满足要求。 ②只读存储器ROM:只读存储器ROM读出一个数据的时间为数百ns,有时也可改写,但 写入一个数据的时间长达数十ms。因此在计算机运行时只能执行读操作。掉电后ROM中存放 的数据不会丢失。ROM适宜存放程序、常数、表格等,因此又称为程序存储器。只读存储器 有以下五类: 电擦除可编程只读存储器EEPROM(Electrically Erasable PROM):由于采用电擦除方 式,而且擦除、写入、读出的电源都用+5V,故能在应用系统中在线改写。但目前写入时间 较长,约需10ms左右,读出时间约为几百ns。 闪烁存储器(Flash Memory):快速擦写存储器(Flash Memory)(简称Flash)是20 世纪80年代中期推出的新型器件。它可以在联机条件下,即在计算机内进行擦除、改写, 因而称为快擦写型存储器或闪烁存储器。它具有芯片整体或分区电擦除和可再编程功能, 从而使它成为性能价格比和可靠性最高的可读写、非易失性存储器。主要性能特点: 高速芯片整体电擦除:芯片整体擦除时间约1s,而一般的EPROM需要15分钟以上。 高速编程:采用快速脉冲编程方法,编程时间短。 最少1万次擦除/编程周期,通常可达到10万次。 早期的Flash采用12V编程电压,改进后在Flash内部集成了1个DC/DC变换器,可以 采用单一的5V电压供电。 高速度的存储器访问:最大读出时间不超过200μs。高速的Flash的读出时间了达 60μs。 低功耗:最大工作电流30mA,备用状态下的最大电流100μA。 密度大,价格低,性价比高。 由于Flash的突出性能,使它发展迅速。Intel公司已决定由Flash来替代EEPROM,不再 生产EEPROM。由于它的非易失性和可以长期地反复使用,目前已经广泛应用于IC卡、单片 机系统和其它电子设备中。大容量的Flash也可以“固态盘”的形式代替软盘或硬盘作为海 量存储器用。 在设计专用的微型计算机系统时,主要使用的是内存储器。在内存储器中主要用的是 静态的RAM和电擦除EEPROM。半导体存储器在使用时,厂家是以芯片的形式提供给使用者 的。 (3)CPU对存储器的操作 一个存储器单元存放的信息称为该存储单元的内容。数据和程序均是以二进制数形式 存放的,不论是8位还是16位机,都是以8位二进制数作为一个字节存放在存储器中的