微机原理与接口技术

83
武武武武武武武武武武

description

微机原理与接口技术. 并口连接器. 鼠标键盘. USB 接口. 串口连接器. ROM BIOS. CPU 插槽. 主板 电源 插座. ISA 插 槽. 北桥 芯片组. PCI 插槽. AGP 插 槽. 内存插槽. 南桥 芯片组. 软驱接口. IDE 接口. 课程性质: 专业技术必修课程。 课程的特点: 前后知识相互关联,互为基础 。 偏重硬件,实用性强。 基础要求: 数字电路、计算机算法语言等 特点: 内容多,学时少, 进度快,难度大,应用广。 讲课内容: 汇编语言、接口技术。 讲课学时: 共72学时。 - PowerPoint PPT Presentation

Transcript of 微机原理与接口技术

Page 1: 微机原理与接口技术

武汉大学电子信息学院

Page 2: 微机原理与接口技术

ISA插槽

PCI 插槽AGP插槽

北桥芯片组

南桥芯片组

内存插槽

CPU 插槽

IDE 接口 软驱接口

并口连接器串口连接器

ROM BIOS

鼠标键盘USB接口

主板电源插座

Page 3: 微机原理与接口技术

课程性质:课程性质: 专业技术必修课程。课程的特点:课程的特点:前后知识相互关联,互为基础。。偏重硬件,实用性强。基础要求:基础要求: 数字电路、计算机算法语言等特点:内容多 , 学时少 , 进度快,难度大,应用广。

讲课内容 : 汇编语言、接口技术。

讲课学时 : 共 72 学时。

考试成绩:由期终考试成绩和平时成绩综合评定。

Page 4: 微机原理与接口技术

教材教材::微型计算机原理与接口技术 微型计算机原理与接口技术 吴秀清等 吴秀清等 编著

中国科学技术大学出版中国科学技术大学出版

参考教材: IBMPC 汇编语言程序设计 沈美明等 编著

清华大学出版社出版

微机计算机技术及应用 戴梅萼 编著

清华大学出版社出版

微机原理与接口技术 微机原理与接口技术 龚尚福等龚尚福等 编著 西安电子科技大学出版西安电子科技大学出版

Page 5: 微机原理与接口技术

微机 原理 与 接口 技术

典型机型: IBM PC 系列机

I/O 接口电路及与外设的连接

硬件:接口电路原理软件:接口编程方法

基本系统: 8086 ( 8088 ) CPU

Page 6: 微机原理与接口技术

第第 11 章 微型计算机基础章 微型计算机基础

1.1 微型计算机概述

1.2 微型计算机系统

1.3 计算机中的数制及其转换

1.4 计算机中数与字符的编码

Page 7: 微机原理与接口技术

世界上第一台电子计算机是 1943-1946 年美国宾夕法尼亚大学研制的 ENIAC(Electronic Numerical Integrator And Computer) 。

1.1 微型机算机概述1.1.1 计算机的发展

ENIAC (1946)

掌上电脑 (2000)

Page 8: 微机原理与接口技术

根据计算机所采用的逻辑器件的发展,将其分为四代:第一代:电子管计算机时代( 1946-20 世纪 50 年代后期)

第二代:晶体管计算机时代( 20 世纪 50 年代中期到 60 年代中后期)

第三代:集成电路计算机时代( 20 世纪 60 年代中期到 70 年代前期)

第四代:大规模集成电路计算机时代( 20 世纪 70年代开始)

* 微型计算机是第四代计算机的典型代表。

Page 9: 微机原理与接口技术

电子管计算机(1946—1956)

晶体管计算机(1957—1964)

集成电路计算机(1965—1970)

大规模集成电路计算机

(1971— 至今 )

用机器语言、汇编语言编写程 用于军事和国防尖端技术 开始使用高级语言 开始用于工程技术、数据处理和 其它科学领域 采用微程序、流水线等技术, 提高运行速度 出现操作系统、诊断程序等软件 采用半导体存储器 采用图形界面操作系统 器件速度更快 , 软件、外设更加丰富

Page 10: 微机原理与接口技术

现代计算机的结构基础:存储程序控制结构

1945 年,由美籍匈牙利数学家 John Von Neumann 提出 , 称为冯•诺依曼计算机。其工作原理可概述为:

“ 存储程序” + “ 程序控制”

要点:1 .以二进制表示数据和指令 ( 程序 ) 。

2. 先将程序存入存储器中,再由控制器自动读取并执行。

Page 11: 微机原理与接口技术

1.1.2 微型计算机的特点功能强 可靠性高 价格低 适应性强 周期短见效快(研制周期短,产品系列化,便于组建系统) 体积小,重量轻,耗电小 维护方便应用面广 科学计算,数据处理,事务管理,教学培训

计算辅助设计和制造,家庭娱乐,网络通信

Page 12: 微机原理与接口技术

了解微型计算机的应用,明确学习本课程的目的!

早期:科学计算。特点:没有很强的实时性要求,不需要专用 I/O 设备。

60 年代后重点转移:信息处理、过程控制。特点:实时性强,需要专用 I/O 设备。

因此,需掌握: ( 1 )汇编语言编程——实时性强,要求程序精练,运行快。( 2 )接口技术——专用 I/O 设备与计算机的连结和程控。

Page 13: 微机原理与接口技术

1.1.3 微型计算机的指标1 、字长

微机的字长是指微处理器内部一次可以并行处理二进制代码的位数。它与微处理器内部寄存器及 CPU 内部数据总线宽度是一致的,字长越长,所表示的数据精度就越高。当精度相等时,字长较长的微处理器运算速度快。

* 字长是衡量 CPU 工作性能的一个重要参数。

不同类型的 CPU 有不同的字长。

如 : Intel 4004 是 4 位

8080 是 8 位

8088/ 8086/80286 是 16 位

80386/80486、 Pentium 是 32 位

Page 14: 微机原理与接口技术

1010 1100 0110 0101 1001 1000 0100 0011 被加数

+ 1100 0011 1100 0011 0001 0101 0101 1000 加数进位 1 1 1111 1 111 1 1

0111 0000 0010 1000 1010 1101 1001 1011 和 4 位 8次 8 位 4次16 位 2次32 位 1次

Page 15: 微机原理与接口技术

2 、存储容量

存储容量是衡量微机内部存储器能存储二进制信息量大小的一个技术指标。 下面是几个常用概念:

位: ( bit)

指计算机能表示的最基本最小的单位。在计算机中采用二进制表示数据和指令,故:位就是一个二进制位,有两种状态,“ 0” 和 “ 1”

字节: ( Byte )8位二进制数称为一个字节 1 Byte = 8 bit

字: (Word) 16位二进制数称为一个字 1 Word = 2 Byte

双字:( Dword) 32位二进制数称为一个双字1 DWord = 2 Word= 4 Byte

Page 16: 微机原理与接口技术

*存储器容量以字节为最基本的计量单位。 11 字节——字节—— 1B1B 1024B——1KB1024B——1KB 1024KB——1MB1024KB——1MB 1024MB——1GB1024MB——1GB

位 1 或 0 1 位字节 1100 0011 8 位字 1100 0011 0011 1100 16 位

双字 1100 0011 0011 1100 1100 0011 0011 1100 32 位高字节 低字节

高 字 低 字

例:

Page 17: 微机原理与接口技术

位编号

为便于描述,对字节 , 字和双字中的各位进行编号。

从低位开始,从右到左依次为 0 、 1 、 2 ...

← 编号7 6 5 4 3 2 1 0

1 0 1 0 0 0 1 0

D7 D6 D5 D4 D3 D2 D1 D0

A7 A6 A5 A4 A3 A2 A1 A0

字节

数据 Data

地址 Address

Page 18: 微机原理与接口技术

D0D7D15 D8

15 8

1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0

7 0

A0A7A15 A8

字的编号为 15 ~ 0

双字的编号依此类推,为 31 ~ 0

Page 19: 微机原理与接口技术

3 、指令执行时间 指令执行时间是指计算机执行一条指令所需的平均时间,其长短反映了计算机执行一条指令运行速度的快慢。 该项指标与微处理器工作主频、指令系统设计、 CPU体系结构等有关。

4 、系统总线 系统总线是连接微机系统各功能部件的公共数据通道。 其性能表现为数据传送位数和总线工作时钟频率(外频)。系统总线的信息吞吐率越高,微机系统的性能就越强。目前采用的总线标准如: PC总线、 ISA 、 EISA 、 VESA 、 PCI总线等。

5 、外部设备配置:显示器、打印机、网卡等

6 、系统软件配置: DOS 、 Windows

Page 20: 微机原理与接口技术

1.1.4 微型计算机的分类1 、按微处理器的位数分类

8位机、 16位机、 32位机、 64位机

2 、按微型计算机的用途分类

通用机、专用机

3 、按微型计算机的档次分类

低档机、中档机、高档机(按微处理器档次分如: 8086 机、386 机、 586-Pentium 机、 Pentium4 机 )

以 Intel公司生产的 80x86为例列出微机性能指标表如下:

Page 21: 微机原理与接口技术

推出 年代

CPU 芯片

寄存器 位 数

数据线 宽 度

地址线 宽 度

最大主频 MHz

1971.11 4004 4 4 0.1 1972.4

1974.4

8008

8080

8

8

8

8

14

16

0.2

2

1978.6

1979.6

1982.2

8086

8088

80286

16

16

16

16

8

16

20

20

24

10

8

16

1985.10

1989.4

80386

80486

32

32

32

32

32

32

33

66

1993.3

1995.11

1997.5

1999.2

Pentium

Pentium Pro

Pentium II

Pentium III

32

32

32

32

64

64

64

64

32

32

36

36

100

200

450

1000

80x86微机性能指标表

Page 22: 微机原理与接口技术

单片机

将 CPU 、内存、 I/O 接口电路全部集成一块芯片上, 构成具备基本功能的计算机,称单片机。

特点:超小型、高可靠性、价廉

应用:智能仪表、工业实时控制、家用电器等

产品: Intel 的 8051 、 8096/8098 系列 ( 有限选课 )

Motorola 的 6801 、 6805 系列 Hitachi ( 日立 ) 的 H8S、 SH 系列

4 、按微型计算机的组装形式和系统规模分类

单片机、单板机、个人计算( PC) 机

Page 23: 微机原理与接口技术

单板机

将 CPU 、内存、 I/O 接口及其它辅 助电路 全部装在一块印刷电路板上,组成单板机。

特点:结构简单、价廉

应用:过程控制、数据处理

产品: TP-801 以 Z80CPU 为核心的单板机 80 年代各院校“微机原理”的实验机

Page 24: 微机原理与接口技术

桌上型:台式电脑 便携型:笔记本

个人计算( PC)机

PC机是将一块主机板(包括微处理器、内存储器、输入输出接口等芯片)和若干接口卡、外存、电源等部件组装在一个机箱内,并配置显示器、键盘、鼠标等外设和系统软件构成的微机系统。

Page 25: 微机原理与接口技术

接口

1.2 微型计算机系统1.2.1 微型计算机

备 控制器 微处理器 CPU

存储器

运算器 ALU

主 机

接口

图 1.1 计算机硬件系统组成

微型计算机硬件由运算器、控制器、存储器、输入设备和输出设备五大部分组成,并以微处理器( CPU: central processing unit )芯片为核心,通过总线连接成一个整体。

Page 26: 微机原理与接口技术

微处理器( CPU ):运算器加控制器(包括寄存器组) 运算器 对数据信息进行加工处理的部件(完成算数、逻辑运算和其他操作)。 控制器 微机的指挥控制中心,控制各部件协调工作。

存储器 存放程序和数据的部件,分主存储器和辅助存储器。

输入 / 输出( I/O) 设备 输入 / 输出( I/O) 设备又称外设,通过 I/O 接口与 CPU相连。

Page 27: 微机原理与接口技术

存储器

I/O接口

输入设备

I/O接口

数据总线 DB

控制总线 CB

地址总线 AB

输出设备CPU

微型计算机各部件通过总线连接

Page 28: 微机原理与接口技术

1.2.2 微型计算机系统

微型计算机的硬件系统称为裸机,裸机配上系统软件,加上电源和合适的外设,就构成了一个可以使用的微型计算机系统。 软件是指为运行、维护、管理和应用计算机所编制的所有程序的集合,一般分为系统软件和应用软件两大类。

* 参见:微型计算机系统层次结构示意图

Page 29: 微机原理与接口技术

微型计算机系统的组成

• (微处理器 Microprocessor)

• (微型计算机 Microcomputer)

• (微计算机系统 Microcomputer system)

Page 30: 微机原理与接口技术

系统软件: DOS、Windows 95/98/2000应用软件: Word、 Photoshop

微 处 理 器 CPU 存储器 (RAM,ROM)

I/O 接口总线

硬 件

软 件

微 型计算机系 统

主 机

外 设

ALU寄存器控制部件

键盘、鼠标显示器软驱、硬盘、光驱 打印机、扫描仪

*微机系统硬件、软件互为基础,互相支持。

Page 31: 微机原理与接口技术

总线是连接多个功能部件的一组公共信号线, 微机中各功能部件之间的信息是通过总线传输的。

总线 BUS

存储器

I/O接口

输入设备

I/O接口

输出设备CPU

1.2.3 总线

Page 32: 微机原理与接口技术

按总线的使用角度可分为以下几类内部总线:是微处理器内部各个部件之间传送信息的通路。

元件级(微处理器级)总线:连接计算机中两个主要部件的总线。——主体是微处理器,通过微处理器与其它逻辑部分连接构成主机板。

板级(系统级)总线:微机系统都采用模块结构,各模块、板之间连接的总线。——主体是主机板,通过主机板与其它部件连接组成微机系统。总线标准:国际上正式公布或推荐的系统各个模块互连的标准,包括插座的尺寸、引线的数目、含义和时序等。例: 8086系列微机中的标准总线有: PC总线、 ISA总线、 EISA总线等。

局部总线:多总线结构,可减少总线竞争,提高系统效率。例:PCI局部总线,完全实现即插即用( Pnp)。

Page 33: 微机原理与接口技术

微机系统的组织方式:

CPU 元件级总线 主板 系统级总线 外设(多个)

Page 34: 微机原理与接口技术

ISA插槽

PCI 插槽AGP插槽

北桥芯片组

南桥芯片组

内存插槽

CPU 插槽

IDE 接口 软驱接口

并口连接器串口连接器

ROM BIOS

鼠标键盘USB接口

主板电源插座

Page 35: 微机原理与接口技术

550MHz

IDE2

Pentium III

北桥440BX

AGP

南桥PIIX4ECMOS & RTC

USB

超级 I/O

IDE1

COM1

COM2

LPT1

550MHz L1Cache

L2Cache

处理机总线 100MHz

100MHz

PCI 总线 33MHzPCI 插槽

ISA 插槽

ISA总线 8MHz

内存条

ROM BIOS

显示器

硬盘

光驱

软驱键盘鼠标

打印机MODEM

66MHz显卡

Page 36: 微机原理与接口技术

按信号的作用总线分为三类 :

地址总线( Address Bus) 、 数据总线 (Data Bus) 、 控制总线 (Control Bus)

存储器

I/O接口

输入设备

I/O接口

数据总线 DB

控制总线 CB

地址总线 AB

输出设备

CPU

Page 37: 微机原理与接口技术

地址总线 AB ( Address Bus) :单向

用来传送 CPU输出的地址信号,确定被访问的存储单元、 I/O 端口。

存储器

I/O接口

输入设备

I/O接口

数据总线 DB

控制总线 CB

地址总线 AB

输出设备

CPU

Page 38: 微机原理与接口技术

地址总线的条数 决定 CPU 的寻址能力。

10根 → 210 1024 1K

16根 → 216 65536 64K

20根 → 220 1024K 1M

32根 → 232 22 × 230 4G

36根 → 236 26 × 230 64G

Page 39: 微机原理与接口技术

数据总线 DB ( Data Bus ) :双向

用来在 CPU与存储器、 I/O 接口之间进行数据传送。

存储器

I/O接口

输入设备

I/O接口

数据总线 DB

控制总线 CB

地址总线 AB

输出设备

CPU

Page 40: 微机原理与接口技术

数据总线的条数决定一次可最多传送数据的宽度。

8 根 → 一次传送 8位

16 根 → 一次传送 16位

32 根 → 一次传送 32位

64 根 → 一次传送 64位

Page 41: 微机原理与接口技术

控制总线 CB ( Control Bus ) : 用于传送各种控制信号。

存储器

I/O接口

输入设备

I/O接口

数据总线 DB

控制总线 CB

地址总线 AB

输出设备

CPU

有的是 CPU发出,如读控制信号、写控制信号; 有的是发向 CPU ,如外设向 CPU发出的中断申请信号。

Page 42: 微机原理与接口技术

1.3 计算机中的数制及其转换1.3.1 数与数制

(一)、进位计数制及其要素:

进位计数制:按进位原则进行计数的方法。

例:十进制数有 :

0 、 1 、 2 、 3 、 4 、 5 、 6 、 7 、 8 、 9十种状态。

我们说:十进制数基数 10 ,变化范围 0~( 10-1) , 逢十进一。

看一个十进制数:

4 0 9 4 每一位十种数码的状态 (0~9)

千 百 十 个 本位绝对值的大小 = 数 × 位权

103102101100 如:千位 = 4×103=4000

Page 43: 微机原理与接口技术

十进制数有二个要素:

1. 基数: 10

逢 十 进 一

2. 位权: 10i

某一位数绝对值大小 = 数 × 位权 .

二个要素 : 适用于二、八、十六进制。

二进制数:基数 2 位权 2i

八进制数:基数 8 位权 8i

十六进制数 : 基数 16 位权 16i

Page 44: 微机原理与接口技术

(二)、 进位计数制的表示方法: 1234 . 56= 1 103+2 102+3 101+4 100+5 10-1+6 10-2

推广到任意十进制:

N=±[k n 10n+k n-1 10 n-1+……+k0 100

+k-1 10-1+…… +k-m 10-m]

= ± [ k i 10i] (i= -m~n)

任何某一位数大小 = k i 10i

对于任意进制 : N= ± [k i R i] (i=-m~n)

R — 基数 , 逢 R 进一 . Ri— 位权

Page 45: 微机原理与接口技术

例如:二进制数 B=10011101

B=1 27+1 24+1 23+1 22+1 20

=( 157) 10

在计算机里进行运算和处理均是按二进制数处理的。

而二进制数写起来麻烦 ;

写时又以八进制或十六进制表示;

日常生活中又常用十进制,

因此就有:二 十

八 十

二 八 数制之间转换问题

十六 十

二 十六

Page 46: 微机原理与接口技术

1.整数 十 → 二 (除 2取余法)

方法方法:

整数除整数除 22 取余,直到商为取余,直到商为 00 为止,为止, 读数由后向前。

1.3.2 不同数制之间的转换

(一) 十 二

Page 47: 微机原理与接口技术

例:将( 217) 10 转化为二进制形式。

余数: 按照相反的方向写下来。

/2 /2 /2 /2 /2 /2 /2 /2

217 108 54 27 13 6 3 1 0 ----商

1 0 0 1 1 0 1 1 ---- 余数

(217) 10=( 11011001) 2 书写方向

Page 48: 微机原理与接口技术

2.2.小数十→二小数十→二 : : 乘乘 22 取整取整

方法:对十进制数逐次乘 2 ,

即乘 2 取整法,位数取决于要求精度。

Page 49: 微机原理与接口技术

例:

(0.613)10 2=1.226 k-1=1

(0.226)10 2=0.452 k-2=0

(0.452)10 2=0.904 k-3=0

(0.904)10 2=1.808 k-4=1 ( 0. 1001 ) 2 = ( 0. 5625 ) 10

(0.808)10 2=1.616 k-5=1 ( 0.10011 ) 2= ( 0. 609375 ) 10

(0.616)10 2=1.232 k-6=1

(0.613)10=(0.100111)2

既有整数又有小数部分的,可分别转换,再组合起来。

Page 50: 微机原理与接口技术

3. 二→十 按权展开,求累加和。

例:( 0. 1001 ) 2 =1 2-1+1 2-4=0. 5+0. 0625= ( 0. 5625 ) 10

( 1001 ) 2=1 23+0 22+0 21+1 20 = ( 9 ) 10

* 下页是常用的几种数制写法: (八位二进制数)

Page 51: 微机原理与接口技术

十进制 二进制 八进制 十六进制 BCD 0 0 0

0 0

1 01 1 1 1

2 10 2 2 10

3 11 3 3 11

4 100 4 4 100

5 101 5 5 101

6 110 6 6 110

7 111 7 7 1118 1000 10 8 1000

9 1001 11 9 1001

10 1010 12 A 10000

11 1011 13 B 10001

12 1100 14 C 10010

13 1101 15 D 10011

14 1110 16 E 10100

15 1111 17 F 10101

16 10000 20 10 10110

。 。 。 11 。

。 。 。 12 。

。 。 。 。 。

(255)D 11111111B 377O(Q) FFH (10,0101,0101)BCD

Page 52: 微机原理与接口技术

1 、 二 八

二→ 八: 以小数点为界向左向右三位一段,不够补 0 , 三位二进制数用一位八进制数表示。

例:( 1 , 101 , 001.010 , 011 , 1 ) 2

不够补 0 不够补 0

( 001 101 001. 010 011 100 ) 2= ( 151.234 ) 8

八→二: 一位八进制数用三位二进制数表示。

( 151 . 234 ) 8= ( 001 101 001. 010 011 100 ) 2

(二) 二 八,二 十六,二 BCD之间转换

Page 53: 微机原理与接口技术

二→十六:

以小数点为界向左向右四位一段, 不够补 0,

四位二进制数用一位十六进制数表示。

例:( 110 1001.0100 111 ) 2 →( 69.4E )16

不够补 0 不够补 0

(0 1 1 0,1 0 0 1 . 0 1 0 0,1 1 1 0)2=(69 . 4E)16

十六→二:一位十六进制数用四位二进制数表示。

例: (69 . 4E)16 = (0 1 1 0,1 0 0 1 . 0 1 0 0,1 1 1 0)2

2 、 二 十六

Page 54: 微机原理与接口技术

BCD 数:

常用 8421码,每一位十进制数用四位二进制编码表示。

1111B 9D 1001BCD

10D 0001 0000BCD

BCD码与二进制数之间转换没有直接关系,必须先转换成十进制 ,然后转换成二进制。

例: 1111111B=255D=0010,0101,0101BCD

0010,0101,0101BCD= 255D=1111 1111B

3 、 二 BCD

Page 55: 微机原理与接口技术

1 、二进制数的编码及运算

数据的正负号可以用一位二进制的“ 0” 和“ 1”来表示。常用的二进制数值数据编码有原码、反码和补码 。由于补码由许多优点,大多数微机采用补码进行编码。

什么是机器数与真值?

机器数:带符号的二进制数值数据在计算机内部的编码。

机器数的最高有效位是符号位: 0 ——正数

1——负数

真值:机器数所代表的实际值。

1.4 计算机中数与字符的编码1.4.1 数值数据的编码及其运算

Page 56: 微机原理与接口技术

例 : 机器数与真值 (注意符号怎么表示?)

N1=+ 1011011 N2= - 1011011 为真值

0 1011011 1 101 1011 为机器数

总结:对于字长 8 位机器数

D7 为符号位 : 0 表示“ +” , 1 表示“ -” 。符号数码化了。

D6 ~ D0 为数字位。

如 : X=( 01011011) 2=+91 X=( 11011011) 2= - 91

Page 57: 微机原理与接口技术

* 符号数码化了,对数据进行运算时,符号位应如何处理?

把符号位和数值位一起编码:原码,反码,补码。

正数符号位用“ 0” 表示,负数符号用“ 1”表示,绝对值的编码规则与无符号数编码规则相同,这种表示法称为原码。 X=+105 [X] 原 = 0 1101001

X=-105 [X] 原 = 1 1101001

符号 数值

原码表示简单 ,真值 转换方便,减法不方便。

故引进反码,补码。

原码

Page 58: 微机原理与接口技术

正数反码表示与原码相同,最高位“ 0” 表示正,其余位为数值位。

负数反码表示为负数原码的符号位不变,尾数按位取反。

例: [+4] 反 = 0 0000100

[-4] 反 = 1 1111011

[+127] 反 = 0 1111111

[-127] 反 = 1 0000000

[+0] 反 = 0 0000000

[-0] 反 = 1 1111111

反码

Page 59: 微机原理与接口技术

正数的补码表示与原码相同,最高位 用“ 0” 表示正,其余位为数值位。

负数的补码表示为它的反码 +1 。(也可从定义出发求补码,当 X<0 时, [X] 补 =2 n -|X|,mod 2n)

[+127] 原 =0 1111111 [+0] 原 =0 0000000

[-127]反 =1 0000000 [-0]反 =1 1111111

[-127]补 =1 0000001 [-0]补 =0 0000000

补码

Page 60: 微机原理与接口技术

举例说明补码表示法的意义: 钟表校时,若标准时间为 6 点整,现在表指向 10 点整,要拨到 6 点,有两种拨法:( 1 )、倒拨 10-4=6( 2 )、顺拨 10+8=12+6=6 ( 12 自动丢弃)可得出下列结论:( 1 )、在模的意义下,等式 10-4=10+8 成立( mod 12) ,系统的模即系统的最大量程(如 12 )是自然丢掉的。( 2 )、 +8 为 -4对模 12 的补码,同理, +7 与 -5 , +6 与 -6( 3 )、 10-4转化为 10+8 ,结果相同,说明引进补码后,减法就可转化为加法了。

对 8位二进制而言,它的模为 28 。

Page 61: 微机原理与接口技术

三种码制之间关系及特点:正数:原,反,补相同

负数:原,反,补不同,但最高位为 1 。

负数 : 原→反, 符号位不变,尾数按位求反

原→补 ,符号位不变,尾数按位求反 +1

补→原, 符号位不变,尾数求反 +1

反→原 ,符号位不变,尾数求反 .

小结:

Page 62: 微机原理与接口技术

说明:1 )、原码表示法简单,易于理解,与真值转换方便,但加减运算时麻烦,故引进反码和补码。

2 )、数 0 的原码和反码有两种表示形式,而补码表示法中,0只有一种表示形式。 “0” 的表示 原码 反码 补码

[+0] 原 =000…00 [+0]反 =000…00 [+0]补 =000…00

[-0] 原 =100…00 [-0]反 =111…11 [-0]补 =000…00

Page 63: 微机原理与接口技术

3 ) 8位二进制数的表示范围:

无符号数: 0~255

原 码 : -127~+127

反 码 : -127~+127

补 码 : -128~+127

补码数的扩展:正数在符号位前补 0 ,负数在符号位前补 1 。例: 70H 0070H,

F0H FFF0H

已知补码求真值:补码的补码即为真值。例:

[X] 补 =1111 1111 ,则 X= [[X] 补 ] 补 =1000 0001=( -1) 10

Page 64: 微机原理与接口技术

二进制数补码的运算

补码的运算规则是: [X+Y] 补 =[X] 补 +[Y] 补

[X-Y] 补 =[X] 补 +[-Y] 补

举例说明:

Page 65: 微机原理与接口技术

设 X1= + 0001100 X2 = - 0001100

Y1 = + 0000101 Y2 = - 0000101

[X1] 补 = 00001100 [X2] 补 = 11110100

[Y1] 补 = 00000101 [Y2] 补 = 11111011

【例】

Page 66: 微机原理与接口技术

① 计算 X1 + Y1 。(两正数相加)

+ 0001100 X1 0 0001100 [X1]补+) + 0000101 Y1 +) 0 0000101 [Y1]补 + 0010001 X1+Y1 0 0010001 [X1]补 +[Y1]补

因为:

[X1+Y1] 补 = [+0010001] 补 = 0 0010001 = [X1] 补 + [Y1]

所以:

[X1+Y1] 补 = [X1] 补 + [Y1] 补

Page 67: 微机原理与接口技术

② 计算 X1 - Y1 。 (两正数相减)

+ 0001100 X1 0 0001100 [X1] 补

- ) + 0000101 Y1 +) 1 1111011 [ - Y1] 补

+ 0000111 X1 - Y1 10 0000111 [X1] 补 +[ - Y1] 补

自然丢失

因为: [X1 - Y1] 补 = [+0000111] 补 = 0 0000111 = [X1] 补 + [ -Y1] 补

所以: [X1 - Y1] 补 = [X1] 补 + [ - Y1] 补

Page 68: 微机原理与接口技术

③ 计算 X2 + Y2 。 (两负数相加) - 0001100 X2 1 1110100 [X2]补+) - 0000101 Y2 +) 1 1111011 [Y2]补 - 0010001 X2+Y2 1 1 1101111 [X2]补 +[Y2]补

自然丢失

因为:

[X2+ Y2] 补 = [- 0010001] 补 = 1 1101111 = [X2] 补 + [Y2] 补

所以:

[X2 + Y2] 补 = [X2] 补 + [Y2] 补

Page 69: 微机原理与接口技术

④ 计算 X2 - Y2 。 (两负数相减)

- 0001100 X2 1 1110100 [X2] 补

- ) - 0000101 Y2 +) 0 0000101 [ - Y2] 补

- 0000111 X2 - Y2 1 1111001 [X2] 补 +[ - Y2]

因为:

[X2 - Y2] 补 = [- 0000111] 补 = 1 1111001 = [X2] 补 + [ - Y2] 补

所以:

[X2 - Y2] 补 = [X2] 补 + [ - Y2] 补

Page 70: 微机原理与接口技术

计算机引入了补码编码后,带来了以下几个优点:

(1) 减法转化成了加法,这样大大简化了运算器硬件

电路的设计,加减法可用同一硬件电路进行处理。

(2) 运算时,符号位与数值位同等对待,都按二进制

数参加运算,符号位产生的进位丢掉不管,其结果是正确的。

这大大简化了运算规则。

结论:

Page 71: 微机原理与接口技术

[-Y] 补怎么求?

变补(求负)的概念:已知 [Y] 补求 [-Y] 补的过程。

方法:对 [Y] 补的每位按位取反(包括符号位),然后加 1 ,即为 [-Y] 补。

例: [+87] 补 =0101 0111

[ -87] 补 =1010 1001

采用补码运算后结果是怎样的?

补码运算的结果也是补码 !欲得真值,还需转换!

思考:

Page 72: 微机原理与接口技术

运算时数的溢出问题

假设机器字长为 n 位,则有符号整数 ( 一般为补码)表示的范围是: -2n-1≤X≤2n-1-1 无符号整数表示的范围是: 0≤X≤2n-1

例:当 n=8 时 , 数的范围分别是: -128~ +127 (有符号)

0 ~ 255 (无符号)

当 n=16 时 , 数的范围分别是: -32768~ +32767 (有符号)

0 ~ 65535 (无符号) * 运算时数如果超出了范围则称为溢出,发生溢出的情况有:

1 、同号数相加 2 、异号数相减

Page 73: 微机原理与接口技术

1.4.2 非数值数据的二进制编码

字和各种字符也需按照特定规则用二进制编码才能在机器中表示。编码有各种方式,目前规定在微型机中最普遍采用 ASCⅡ码。

( American Standard Code for Information Interchange ) 美国标准信息交换码

Page 74: 微机原理与接口技术

字符与字符串的表示方式 :ASCⅡ码 :字符编码通用的编码方案是 ASCII码,即美国标准信息交换码。 ( American Standard Code for Information Interchange )

ASCII码是二进制编码,可以表示 128 个字符。

可显字符: 95个, 0100000---1111110

非显字符: 33个, 0000000---0011111, 1111111

用一个字长( 8 位)表示一个 ASCⅡ字符。

常用的 ASCⅡ字符:

0—9 的 ASCⅡ码 30H—39H

A—Z 的 ASCⅡ码 41H—5AH

a—z 的 ASCⅡ码 61H—7AH

Page 75: 微机原理与接口技术

行 列 000 001 010 011 100 101 110 111

0000 NUL DLE SP 0 @ P 、 p

0001 SOH DC1 ! 1 A Q a q

0010 STX DC2 ” 2 B R b r

0011 ETX DC3 # 3 C S c s

0100 EOT DC4 $ 4 D T d t

0101 ENQ NAK % 5 E U e u

0110 ACK SYN & 6 F V f v

0111 BEL ETB ’ 7 G W g w

1000 BS CAN ( 8 H X h x

1001 HT EM ) 9 I Y i y

1010 LF SUB * : J Z j z

1011 VT ESC + ; K [ k {

1100 FF FS , < L \ l ¦

1101 CR GS - = M ] m }

1110 SO RS · > N ↑ n ~

1111 SI US / ? O _ o DEL

Page 76: 微机原理与接口技术

汉字的表示方式

1 、输入码:用于汉字输入。

好的输入码应具有的特点:容易记忆 . 代码短 . 重码少 汉字

输入码主要分为三类:数字码、音码和形码。

( 1 )数字码区位码和电报码是典型的数字码。区位有时还使用。

区位码:区号 位号组成的编码 区号 01-94 位号 01-94

如 1601 啊

( 2 )拼音码:全拼 简拼 双拼

( 3 )字形码: 五笔字型 郑码

( 4 )其他输入方法:音形码、形音码

Page 77: 微机原理与接口技术

GB2312—80码

国标码: 81 年公布的国家标准《信息交换用汉字编码字符集—基本集》即 GB2312—80码。

共 7445个符号及汉字。 6763个汉字, 682个符号。

所有符号及汉字按区位编排,共设 94区, 94个位1—9区 : 符号, 10—15 区 : 自定义符号,

16—55 区 : 一级汉字, 56—87 区 : 二级汉字, 剩余:空白

一级汉字: 3755个,按汉语拼音排序 二级汉字: 3008个,按偏旁部首排序每个汉字及符号由 2 个 ASCII码组成。由 94个可见字符组合。 21H--7EH

Page 78: 微机原理与接口技术

2 、 内码:用于汉字的存储、交换、检索等操作的机内代码,一般采用两个字节表示。

设计原则:不能具有二义性,且与 ASCII码严格区分 长度尽可能短

应与国标码有尽量简单的对应关系机码有: 2 字节

3 字节 编码为使汉字与 ASCII码兼容,将汉字国标码的每个字节的最高位置

1( 即 +80 80 H)例:“爱” 字的国标码为: 302EH

机内码为: B0AEH 啊:

区位码: 1601啊 1001H 国标: 3021H ( +2020H )

机内: BOA1H ( +8080H )

Page 79: 微机原理与接口技术

3 、 字模码:是用点阵表示的汉字字形代码,它是汉字的输出形式,用于汉字的显示。

①汉字点阵字模: 汉字的点阵模型汉字点阵字模分类: 简易型 16*16 普及型 24*24 提高型

32*32 精密型 48*48②汉字库:用点阵形式存储的汉字字型信息的集合。 硬字库: ROM 软字库:磁盘文件 汉卡:插入主机的扩展槽,不占用内存

Page 80: 微机原理与接口技术

校验码奇、偶校验码:奇偶校验码是一种开销最小 ,

能发现数据代码中一位出错情况的编码,常用于存储器读写检查,或 ASCII 字符传送过程中的检查。它所约定的编码规律是让整个校验码(包括有效

信息和校验位)“ 1” 的个数为奇数或偶数。 由于有效信息的奇偶性只有两种可能:奇偶,所

以只需配一位校验位。则奇校验就是使整个奇校验码“ 1” 的个数为奇数。偶校验法就是使整个校验码“ 1” 的个数为偶数。

Page 81: 微机原理与接口技术

例 1 : 有效信息 1011001           奇校验码 10110011 偶校验码

10110010例 2 : 有效信息 1011011           奇校验码 10110110 偶校验码

10110111 

译码:当从主存读出某数据时,将整个校验码(连同校验位)一道统计。若“ 1” 的个数仍为偶数就认为该数是正确的,没有破坏原来约定的规律。若“ 1” 的个数为奇数,表明有错,应停止使用这个数据,或重新读取,看是否属于偶然性错误。

Page 82: 微机原理与接口技术

思考:

若某存储单元存有信息 00110101B,该信息具有什么含义?

Page 83: 微机原理与接口技术

作业一:

教材: P20 习题 3 ,4