第 1章 微型计算机基础知识
【 本章重点 】 微型计算机的组成和各部分的作
用, 以及计算机中数的表示方法 。
【 本章难点 】 计算机中数的表示方法:原码,
反码, 补码的关系 。
§ 1.1 微型计算机的组成及工作原理
1.1.1 微型计算机中的基本概念
1,微处理器 ( Microprocessor)
2,微型计算机
( 1) 单片微处理机
( 2) 通用微型计算机
3,微型计算机系统
1.1.2 微型计算机的基本结构
C
P
U

线




接口 接口 接口
内存 内存
外设 外设 外设
系 统 总 线
微型计算机的基本组成
1.1.3 微型计算机的基本工作过程
微型计算机的基本工作过程是执行程序的过程,
也就是 CPU自动从程序存放的第 1个存储单元起,逐步
取出指令、分析指令,并根据指令规定的操作类型和
操作对象,执行指令规定的相关操作。如此重复,周
而复始,直至执行完程序的所有指令,从而实现程序
的基本功能,这就是微型计算机的基本工作原理。
工作过程:
取指令 分析指令 执行指令
§ 1.2微处理器及其发展
1.2.1 微处理器的发展历史
1971.11,Intel公司第一枚微处理器芯片 4004,4位机,它总共集成了 2200个晶体管。
1972年 4月,Intel公司宣布另一种型号的微处理器 8008研制成功。 8位机。
1975年 1月,Motorola公司宣布推出它的 8位微处理器 6800。
1979年,Intel公司推出了 Intel 8086/8088微处理器,它是最早的 PC机的 CPU。
1983年,Intel公司推出了 Intel 80286微处理器,它是完全 16位微处理器 。
1985年,Intel公司推出了 Intel 80386微处理器。
1989年,Intel公司推出了 Intel 80486微处理器。
1993年 3月,Intel公司推出了名为 Pentium(经典奔腾)的微处理 。
1995年 11月 Intel公司又推出了 Pentium Pro(高能奔腾)。
1997年 1月,Intel公司又推出了 Pentium MMX(多能奔腾)。
1997年 5月,Intel公司推出了 PentiumⅡ (奔腾二代)
1999年 2月,Intel公司推出了 Pentium Ⅲ ( 奔腾三代)
2000年 11月,Intel公司推出了 Pentium4(奔腾四代)。
第一代
1971年~
1973年
第二代
1974年~
1977年
第三代
1978年~
1980年
第四代
1980年以后
典型的微处理器
芯片
Intel 4004
Intel 4040
Intel 8008
Intel 8080
M6800
Z-80
Intel
8086/8088
M68000
Z-8000
Intel 80X86
M68020
Z-80000
字长(位) 4/8 8 16 16/32
集成度(晶体管
数 /芯片) 1000~ 2000 5000~ 9000 20000~70000 >100000
时钟频率( MHZ) 0.5~ 0.8 1~ 4 5~ 10 >10
数据总线宽度
(位) 4/8 8 16 16/32
地址总线宽度
(位) 4~ 8 8 20~ 24 24~ 32
存储容量 ≤ 16KB实

≤64KB 实存 ≤1MB 实存 ≤4GB 实存和
64GB虚存
指令执行时间
( ?s) 10~ 15 1~ 2 <1 <0.125
软件水平 机器语言汇编语言 汇编语言高级语言
操作系统
汇编语言
高级语言
操作系统
汇编语言
高级语言
部分软件硬化
各代微处理器的特点
1.2.2 微处理器的内部结构
1.总线部件
2.预取部件
3.译码器
4.控制器
5.运算逻辑部件
6.存储器管理部件
1.2.3 Pentium系列微处理器
1.2.3.1 Pentium奔腾微处理器的主要特点:
1、标量体系结构
2、双流水线结构
( 1)转移预测部件
( 2) 高性能的浮点运算
( 3)存储器页面大小任选
1.2.3.2 Pentium MMX的主要特点
Pentium MMX是在奔腾芯片基础上增加了 MMX技术 。
MMX技术的特点主要有二项 。
① 采用 S1MD型指令 。 SIMD( Single Introduction Multi
Data,单指令多数据流 ) 是计算
机系统结构的一种 。
② 拥有积和运算功能 。
③ 拥有饱和运算功能 。
采用 MMX技术后, 提高了不同种类的应用性能, 尤
其对图形, 图像, 动画, 音频数据处理的改进最为明显 。
1.2.3.3 Pentium Pro的主要特点
1,三路超标量体系结构和 14级超级流水线
2,动态执行技术
( 1) 数据流分析
( 2) 增强的转移预测
( 3) 推理执行
3,优化的 32位代码结构和 66MHz的系统总线
Pentium Pro采用优化的 32位代码结构和 66MHz的系统总
线 。
1.2.3.4 Pentium II的主要特点
PentiumⅡ 是在 Pentium Pro的基础上增加了 MMX技术,
具有以下几个特点 。
① 采用了 DIB( Dual independent Bus,双重独立总线 )
技术 。 PentiumⅡ 可同时使用这两条总线, 其中一条总线
用于连接二级高速缓存, 一条总线用于连接主存, 这样
充分提高了数据传输能力 。
② 使用了 SEC( Single Edge Contact,半边接触盒 ) 技
术 。 将 512KB二级高速缓存移出 CPU内核, 但用一个塑料
盒将 CPU与二级高速缓存封装在一起, 中间用高速缓存
总线相连 。 也正同为这一点, Pentium II采用了一种新型
插槽 Slot 1,它与 Socket 7不兼容 。
③双 16KB高速缓存。即 16KB的数据高速缓存和 16KB
的代码高速缓存。
1.2.3.5 Pentium Ⅲ 的主要特点
Pentium Ⅲ 采用了与 PentiumⅡ 相同的 Slot 1结构, 同样
支持 100MH的系统外频 。 PentiumⅢ 针对 K6-2中的 3D
NOW!指令, 在 MMX指令集基础上增加了 70条新的 SSE
指令集, 从而大大增强了 3D几何运算, 动画, 影像, 音
效等功能 。 Pentium Ⅲ 利用数字信号处理软件解决方案,
实现更高效的声音采样和过滤, 提高语音引擎的反应速
度与准确率, 使语音能力成为现实 。 Pentium Ⅲ 可在一个
场景中渲染更多的三维对象, 表现更多的光源 ( 13个光
源 ), 实现渲染反问, 光影效果; Pentium Ⅲ 采用并行的
SIMD浮点运算架构, 并特别增加了 8个 128位寄存器来配
合新指令的运算, 使其在图像, 视频上有额外的表现 。
进行实时同步 MPEG2编码与解码无需 MPEG硬件卡, 可
获得增强的数字电视体验, 若配以宽带的 Modem使可视
电话成为可能 。
1.2.3.6 Pentium 4主要特点
Pentium 4 CPU是目前 Intel公司技术最先进、功能最强大
的台式机处理器,采用先进技术设计,是目前中高档的
微机微处理器。它采用了 HT( Hyper— Threading,超线
程)技术,使一个处理器同时运行两个独立的软件线程;
采用了超级流水线技术( Hyper Pipelined technology)、
800/ 533/ 400MHz前端总线( FSB,Front Side Bus)、
执行跟踪高速缓存和快速执行引擎;另外它还提供了许
多增强特性,包括高级传输高速缓存、高级动态执行、
增强浮点和多媒体单元以及 SSE2( Streaming SIMD
Extensions 2,SIMD流技术扩展 2)等。它在网络广播、
多媒体、视频剪辑、图像处理、网络视频流、语音,3D、
CSD和游戏等方面的功能大大加强了。
处理器 第一代 第二代 第三代 第四代
核心 S-423Willamette S-478 Norhwood 533MHZ
DSB&HT
800MHZ
FSB&HT
发布日期 2000年 11月 2002年 4月 2002年 11月 2003年 4月
主频( GHZ) 1.4~ 2.0 1.8~ 2.4 2.4~ 3.06 2.4~ 3.0+
制造工艺( ?m) 0.18 0.13 0.13 0.13
晶体管数目 42M 55M 55M 55M
核心电压 1.75 1.5 1.525 1.550
一级高速缓存 8KB 8KB 8KB 8KB
二级高速缓存 256KB 512KB 512KB 512KB
外频( MHZ) 100 100 133 133
前端总线
( MHZ)
400 400 533 800
多媒体指令集 MMX/SSE/SSE2 MMX/SSE/SSE2 MMX/SSE/SSE2 MMX/SSE/SSE2
超线程技术 无 无 只有 3.06GHZ有 有
目前流行的 Pentium 4CPU可分为四代,技术特性如表
1.2.4微处理器的发展趋势
歌登,摩尔( Gordon Moore)是 Intel公司奠基者之一,他在 1964
年提出一个摩尔定理,摩尔定理说每 18个月半导体集成电路里面晶
体管的个数会翻一倍,也就是集成度提升一倍,每隔 18个月其性能
会提升一倍。这个非常著名的摩尔定理,从 1964年提出以来(尽管
当时计算机集成电路芯片还没有出现),到 1971年 Intel公司首次做
出第一块 CPU 4004芯片,再到现在,发展了大概三十多年。可以发
现,CPU一直是遵循摩尔定理在发展的,后来到 1995年歌登 ·摩尔对
摩尔定理稍微修改了一下,原来是每一年半( 18个月)后来改成两
年,也就是说每两年芯片的集成度会提升一倍,特性提升一倍,但
价格不变。
对 Intel而言,IA-64是其下 — 个 10~15年的架构。新的 IA-64将使
Intel摆脱 x86架构的限制,从而设计出超越所有现有 RISC CPU和
x86CPU的新型处理器。 IA-64处理器,具有 64位寻址能力和 64位宽
的寄存器,所以被称为 64位 CPU。
1.3.1 数制的表示
1.常用数制
( 1)十进制数
我们熟悉的十进制数有两个主要特点:
? 有十个不同的数字符号,0,1,2,…, 9;
? 低位向高位进、借位的规律是“逢十进一”“借一当十”的计数原则进
行计数。
例如:
1234.45=1× 103+ 2× 102+ 3× 101+ 4× 100+ 4× 10-15× 10-2
式中的 10称为十进制数的基数,103,102,101,100,10-1称为各数位的
权。十进制数用 D结尾表示。
1.3 数制与编码
( 2)二进制数
在二进制中只有两个不同数码,0和 1,进位规律是“逢二进一”“借
一当二”的计数原则进行计数。二进制数用 B结尾表示。
例如,二进制数 11011011.01可表示为:
(11011011.01)2==1× 27+ 1× 26+ 0× 25+ 1× 24+ 1× 23+ 0× 22+ 1× 21+
1× 20+ 0× 2-1+ 1× 2-2
( 3)八进制数
在八进制中有 0,1,2…, 7八个不同数码,采用“逢八进一”“借一
当八”的计数原则进行计数。八进制数用 Q结尾表示。
例如,八进制数( 503.04) Q可表示为:
( 503.04) Q=5× 82+0× 81+3× 80+0× 8-1+4× 8-2
( 4)十六进制数
在十六进制中有 0,1,2…, 9,A,B,C,D,E,F
共十六个不同的数码,采用“逢十六进一”“借一当十六”
的计数原则进行计数。十六进制数用 H结尾表示。
例如,十六进制数( 4E9.27) H可表示为
( 4E9.27) H=4× 162+ 14× 161+ 9× 160+ 2× 16-1+
7× 16-2
2.不同进制数之间的相互转换
表 1-4列出了二、八、十、十六进制数之间的对应关系,
熟记这些对应关系对后续内容的学习会有较大的帮助。
表 1-3 各种进位制的对应关系
十进制 二进制 八进制 十六进制 十进制 二进制 八进制 十六进制
0 0 0 0 9 1001 11 9
1 1 1 1 10 1010 12 A
2 10 2 2 11 1011 13 B
3 11 3 3 12 1100 14 C
4 100 4 4 13 1101 15 D
5 101 5 5 14 1110 16 E
6 110 6 6 15 1111 17 F
7 111 7 7 16 10000 20 10
8 1000 10 8 17 10001 21 11
( 1)二、八、十六进制数转换成为十进制数
根据各进制的定义表示方式,按权展开相加,即
可转换为十进制数。
【 例 1-1】 将( 10101) B,(72)Q,( 49) H转换为十进
制数。
(10101)B=1× 24+ 0× 23+ 1× 22+ 0× 21+ 1× 20=37
(72)Q=7× 81+2× 80=58
(49)H=4× 161+ 9× 160=73
( 2)十进制数转换为二进制数
十进制数转换二进制数,需要将整数部分和小数部
分分开,采用不同方法进行转换,然后用小数点将这两部
分连接起来。
① 整数部分:除 2取余法。
具体方法是:将要转换的十进制数除以 2,取余
数;再用商除以 2,再取余数,直到商等于 0为止,将
每次得到的余数按倒序的方法排列起来作为结果。
【 例 1-2】 将十进制数 25转换成二进制数 2 52
1 2 12
2 6 0
2 3 0
2 1 1
0 1
余数
最低位
最高位
所以( 25) D=11001B
② 小数部分:乘 2取整法。
具体方法是:将十进制小数不断地乘以 2,直到积的小
数部分为零(或直到所要求的位数)为止,每次乘得的整数
依次排列即为相应进制的数码。最初得到的为最高有效数位,
最后得到的为最低有效数字。
【 例 1-3】 将十进制数 0.625转换成二进制数。0.625
2
1.250
2
0.5
2
1.0
1
0
1
最高位
最低位
所以( 0.625) D=0.101B
【 例 1-4】 将十进制数 25.625转换成二进制数,只要将上例整数
和小数部分组合在一起即可,即 (25.625)D=(11001.101)B
例如:将十进制 193.12转换成八进制数。
1 9 3
2 4 1
3 0
0 3
8
8
8
余数
最高位
最低位
0.12
8
0.96 0
8
7.68 7
8
5.44 5
取整
最高位
最低位
所以( 193.12) D ? (301.075)Q
(3) 二进制与八进制之间的相互转换
由于 23=8,故可采用“合三为一”的原则,即从小数
点开始向左、右两边各以 3位为一组进行二 -八转换:若不
足 3位的以 0补足,便可以将二进制数转换为八进制数。反
之,每位八进制数用三位二进制数表示,就可将八进制数
转换为二进制数。
【 例 1-5】 将( 10100101.01011101) 2转换为八进制数。
010 100 101.010 111 010
2 4 5, 2 7 2
即 (10100101.01011101)B =(245.272)Q
【 例 1-6】 将 (756.34)Q转换为二进制数。
7 5 6, 3 4
111 101 110, 011 100
即 (756.34)Q=(111101110.0111)B
(4) 二进制与十六进制之间的相互转换
由于 24=16,故可采用“合四为一”的原则,即从小数
点开始向左、右两边各以 4位为一组进行二 — 十六转换,若
不足 4位的以 0补足,便可以将二进制数转换为十六进制数。
反之,每位十六进制数用四位二进制数表示,就可将十六进
制数转换为二进制数。
【 例 1-7】 将 (1111111000111.100101011)B转换为十六进制数。
0001 1111 1100 0111, 1001 0101 1000
1 F C 7, 9 5 8
即 (111111000111.100101011)B =(1FC7.958)H
【 例 1-8】 将 (79BD.6C)H转换为二进制数。
7 9 B D, 6 C
0111 1001 1011 1101, 0110 1100
即 (79BD.6C)H=(111100110111101.011011)B
1.3.2 常用的信息编码
二 — 十进制 BCD码( Binary-Coded Decimal)
二 — 十进制 BCD码是指每位十进制数用 4位二进制数编
码表示。由于 4位二进制数可以表示 16种状态,可丢弃最后 6
种状态,而选用 0000~ 1001来表示 0~ 9十个数符。这种编码
又叫做 8421码。见表 1-5所示。
表 1-4 十进制数与 BCD码的对应关系
十进制数 BCD码 十进制数 BCD码
0 0000 10 00010000
1 0001 11 00010001
2 0010 12 00010010
3 0011 13 00010011
4 0100 14 00010100
5 0101 15 00010101
6 0110 16 00010110
7 0111 17 00010111
8 1000 18 00011000
9 1001 19 00011001
【 例 1-9】 将 69.25转换成 BCD码。
6 9, 2 5
0110 1001, 0010 0101
结果为 69.25=(01101001.00100101)BCD
【 例 1-10】 将 BCD码 100101111000.01010110转换成十进制数。
1001 0111 1000, 0101 0110
9 7 8, 5 6
结果为( 100101111000.01010110) BCD=978.56
2,字符编码( ASCII码)
计算机使用最多、最普遍的是 ASCII( American Standard
Code For Information Interchange)字符编码,即美国信息交
换标准代码,如表 1.6所示。
表 1-5 七位 ASCII代码表
d3 d2 d1d0位 0 d6 d5d4位000 001 010 011 100 101 110 111
0000 NUL DEL 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 HS / ﹖ O ← o DEL
ASCII码的每个字符用 7位二进制数表示,其排列次序为
d6d5d4d3d2d1d0,d6为高位,d0为低位。而一个字符在计算
机内实际是用 8位表示。正常情况下,最高一位 d7为,0”。 7
位二进制数共有 128种编码组合,可表示 128个字符,其中数
字 10个、大小写英文字母 52个、其他字符 32个和控制字符 34
个。
数字 0~ 9的 ASCII码为 30H~ 39H。
大写英文字母 A~ Z的 ASCII码为 41H~ 5AH。
小写英文字母 a~ z的 ASCII码为 61H~ 7AH。
对于 ASCII码表中的 0,A,a的 ASCII码 30H,41H,61H
应尽量记住,其余的数字和字母的 ASCII码可按数字和字母
的顺序以十六进制的规律写出。
3,奇偶校验码
奇偶校验码是在传送的代码上附加一个校验位,作
为代码的比较校验。这样在接收方,先对信息代码按双
方的校验规定求奇偶校验码,然后再与收到的附加校验
位作比较,若相等则认为接收的代码是正确的,否则为
错。奇偶校验就是鉴别代码中有奇数个,1,还是有偶数
个,1。例如,有效信息为 1011001,若采用偶校验码记
为,0”的话,则有效代码为 1011001 0;采用奇校验码记
为,1”的话,有效代码则为 1011001 1。有效代码的最后
的那个数位,就是奇偶校验位。当接受方收到这组代码
后,便根据奇、偶校验的约定和有效代码中,1”的个数
形成校验码,然后再与接收的校验位作比较。比较相等
的话,说明接受的信息正确;反之,则认为出现了错误。
1.4.1 二进制数在计算机内的表示
1.机器数
在计算机中,因为只有,0”和,1”两种形式,所以数的
正、负号,也必须以,0”和,1”表示。通常把一个数的最
高位定义为符号位,用 0表示正,1表示负,称为数符:其
余位仍表示数值。把在机器内存放的正、负号数码化的数
称为机器数,把机器外部由正、负号表示的数称为真值数。
1.4 计算机数值数据表示与运算
【 例 1-11】 真值为 (-0101100)B的机器数为 10101100,存
放在机器中,如图 1.3所示。
1 0 1 0 1 1 0 0
符 号 位
图 1.3 真值 B在机器中的存放
要注意的是,机器数表示的范围受到字长和数据的类型
的限制。字长和数据类型定了,机器数能表示的数值范围也
就定了。
例如,若表示一个整数,字长为 8位,则最大的正数为
01111111,最高位为符号位,即最大值为 127。若数值超出
127,就要“溢出”。最小负数为 10000000,最高位为符号
位,即最小值为 -128。
2,数的定点和浮点表示
计算机内表示的数,主要分成定点小数、定点整数与浮
点数三种类型。
( 1)定点小数的表示法
定点小数是指小数点准确固定在数据某一个位置上的小
数。一般把小数点固定在最高数据位的左边,小数点前边再
设一位符号位。按此规则,任何一个小数都可以写成:
N=NSN- 1N- 2···N- M,NS为符号位
( 2)整数的表示法
整数所表示的数据的最小单位为 1,可以认为它是小数点
定在数值最低位右面的一种表示法。整数分为带符号和不带
符号两类。对带符号的整数,符号位放在最高位。可以写成:
N=NSNnNn- 1···N2 N1 N0,NS为符号位
一般定点数表示的范围和精度都较小,在数值计算时,
大多数采用浮点数。
(3)浮点数的表示方法
浮点表示法对应于科学 (指数 )计数法,如数 110.011可表
示为,N=110.011=1.10011× 2+10=11001.1× 2-
10=0.110011× 2+11
在计算机机中一个浮点数由两部分构成:阶码和尾数,
阶码是指数,尾数是纯小数。其存储格式如图 1.4所示。
阶符 阶码 数符 尾数
图 1.4 存储格式
【 例 1-12】 设尾数为 4位,阶码为 2位,则二进制数
N=211× l011的浮点数表示形式为:
0 1 1 0 1 0 1 1








应当注意:浮点数的正、负是由尾数的数符确定,
而阶码的正、负只决定小数点的位置,即决定浮点数
的绝对值大小。
带符号数的表示
在计算机中,带符号数可以用不同方法表示,常
用的有原码、反码和补码。
(1)原码
【 例 1-13】 当机器字长 n=8时:
[+1]原= 0 0000001,[-1]原= 1 0000001
[+127]原= 0 1111111,[-127]原= 1 111111l
由此可以看出,在原码表示法中:
最高位为符号位,正数为 0,负数为 1,其余 n-1位表示数的绝
对值。
在原码表示中,零有两种表示形式,即:
[+0]= 00000000,
[-0]= 10000000。
(2)反码
【 例 1-14】 当机器字长 n=8时:
[+1]反= 00000001,[-1]反= 11111110
[+127]反= 01111111,[-127]反= 10000000
由此看出,在反码表示中:
正数的反码与原码相同,负数的反码只需将其对应的正数按
位求反即可得到。
机器数最高位为符号位,0代表正号,1代表负号。
反码表示方式中,零有两种表示方法:
[+0]反= 00000000,
[-0]反= 11111111。
( 3)补码
【 例 1-15】 当机器字长 n= 8时,
[+1]补= 00000001,[-1]补= 11111111
[+127]补= 01111111,[-127]补= 10000001
由此看出,在补码表示中:
正数的补码与原码、反码相同,负数的补码等于它的反码
加 l。
机器数的最高位是符号位,0代表正号,1代表负号。
在补码表示中,0有唯一的编码:
[+ 0]补= [- 0]补= 00000000。
补码的运算方便,二进制的减法可用补码的加法实现,使
用较广泛。
【 例 1-16】 假定计算机字长为 8位,试写出 122的原码、反
码和补码。
[122]原= [122]反= [122]补= 01111010B
【 例 1-17】 假定计算机字长为 8位,试写出- 45的原码、
反码和补码。
[- 45]原= 10101101B
[- 45]反= 11010010B
[- 45]补= 11010011B
对于用补码表示的负数,首先认定它是负数,而后用
求它的补码的方法可得到它的绝对值,即可求得该负数的
值。例如,补码数 (11110011)B是一个负数,求该数的补
码为 (00001101)B,该数相应的十进制数为 13,故求出
(11110011)B为 (- 13)D。
【 例 1-18】 试写出原码 11011001的真值。
(原码)补=(原码)反+ 1= 10100111B=- 39
1.4.2 补码的运算
在微处理机中,使用补码进行运算是十分方便的,它使
同一个微处理机中既能运算带符号数又能运算不带符号的数。
而且,在采用补码表示带符号数的情况下,两个数的减法可
以用加法来实现。下面我们将会看到这一点。
在进行带符号数的加减运算时,应把参与运算的数据转
换成补码形式进行运算。当使用 8位二进制数表示带符号的
数时,它所能表示的数值范围在 (-128)10~ (+127)10之间,
如果相加结果超出了这个范围,就会导致错误发生。
[X+Y]补 =[X]补 +[Y]补
[X-Y]补 =[X]补 +[-Y]补
【 例 1-20】 两个带符号的数 (01000001)2(十进制数 +65)与
(01000011)2(十进制数 +67)
例中是两个正数相加,但结果却是一个负数 —— 符号位
为 1。显然,这个结果是错误的,出现这种错误的原因就在
于这两个数相加的结果超过了 8位二进制带符号数所能表示
的数值范围。
【 例 1-21】 两个负数 (10001000)2和 (11101110)2的相加情况 。
+
01000001
01000011
10000100
10001000
11101110
01110110
+
1
由于规定用 8位二进制数来表示带符号的数,故忽略作
为进位位的第九位。按 8位二进制数来解释这两个符号数的
相加,其结果为一个正数。很明显,结果是错误的。
【 例 1-22】 两个无符号数 (11111101)2和 (00000011)2相加:
+
1
11111101
00000011
00000000
从相加计算的结果来看,如果微处理机只有 8位,也就是
用 8位二进制数来解释运算的结果,则将出现错误。因此,
在微处理机中设有专门的一位,称为进位位,它将用于保存
第九位以防丢失信息。
1.4.3 逻辑运算
( 1)“与”运算。“与”运算的运算规则是:
0?0=0 0?1=0
1?0=0 1?1=1
【 例 1-23】 二进制数 01011101B和 11010101B相与。
01011101
11010101
01010101
( 2)“或”运算。“或”运算的运算规则是:
0? 0=0 0?1=1
1?0=1 1?1=1
【 例 1-24】 二进制数 10101101和 01010000相或。
10101101
01010000
11111101
( 3)“异或”运算。“异或”运算的运算规则是:
0?0=0 0?1=1
1?0=1 1?1=0
【 例 1-25】 二进制数 10101101和 01101110相异或。
10101101
01101110
11000011
+