第一章 单片机基础知识
§ 1-1 单片机概述
§ 1-2 数制及数码
内容提要,
§ 1-1 单片机概述
一、什么是单片机
单片机就是单片微型计算机 (Single-Chip Microcomputer)。
微型计算机系统的硬件部分通常由五部分组成,
输入设备 运算器 输出设备
控制器 存储器
这种计算机系统通常由多块印刷电路板制成:
多板机
主板内存条 CPU
CPUCPU芯片
内存条存储器芯片输入输出接口
芯片
定时计数器
芯片
A/D,D/A
芯片
单板机
印
刷
电
路
板
单
硅
晶
片
CPU存储器
控制电路 定时器时钟电路
I / O口
单片机
( 1) 体积小,重量轻;
( 2) 可靠性高,运行速度快,抗干扰能力强;
( 3) 控制功能强,使用灵活,性价比高;
( 4) 易扩展,易于开发;
( 5) 受集成度限制,片内存储器容量较小,一般
内 ROM在 8KB以下,内 RAM在 256B以内。
单片机是应工业测控的需要而诞生的,它的结构与指令功能
都是按照工业控制要求设计的,故又称单片微控制器 (Single
Chip Microcontroller)。
单片机特点:
以单片机为核心的应用系统广泛应用于:
家用电器;
工业过程控制;
仪器仪表;
智能武器;
航空、汽车等领域。
二、单片机系统的组成
CPU
AB
DB
CB
存储器 接口部件
键盘 显示器 数码管 打印机
定时计数器
单
片
机
系
统
硬件
部分
软件
部分
单片
机芯
片
外围
器件
CPU
内存
中断控制逻辑
通用接口
运算器
寄存器组
控制器
并行 I / O口
串行 UART
定时 /计数器
ADC0809,DAC0832
8253
8251
8255A,8155
2764,6264指令系统
应用
程序
§ 1-2 数制及数码
计算机只识别和处理数字信息,数字是以二进制数的形式表示的。
它易于物理实现,同时,资料存储、传送和处理简单可靠;运算
规则简单,使逻辑电路的设计、分析、综合方便,使计算器具有
逻辑性。
一、数制
1、常用数制
( 1.)十进制数:
1985 = 1000+900+80+5
= 1× 103+9× 102+8× 101+5× 100
特点,有 0 ~ 9 十个不同的符号。
逢十进一。
一般用下脚标 D 表示,如 1985D,或无下脚标。
( 2.)二进制数:
特点:有 0,1两个不同的符号。
逢二进一。二进制数的下脚标为 B
例如:对于整数,
1001B=1× 23+0× 22+0× 21+1× 20 = 9D
对于小数,
0.101B = 1× 2-1 + 0× 2-2 + 1× 2-3 = 0.625D
二进制数每一位的权是:以小数点分界,
…..2 4,23,22,2 1,2 0, 2 -1,2 -2,2 - 3,……
( 3.)十六进制数:
有 0~ 9, A,B,C,D,E,F 共十六个不同的符号。
逢十六进位。用下脚标, H” 表示十六进制数。
例,327 H = 3× 162+2× 161+7× 160
= 807D
3AB, 11H = 3× 162+A× 161+B× 160+1× 161+1× 16-2
=939, 0664 D
2、数制的转换
( 1.) 二进制转换为十进制数
方法, 按权展开。
111.101B =1× 22+1× 2 1+1× 2 0 +1× 2 -1 +0× 2 -2
+1× 2 –3
=4+2+1+0.5+0.125
=7.625D
( 2.) 十进制数转换为二进制数
方法,整数部分除二取余,小数部分乘二取整
45 余数
22 1
11 0
5 1
2 1
1 0
0 1
2
2
2
2
2
2
即 45 = ( 101101) 2
例 1、将十进制数 45转换成二进制数。
例 2:十进制小数部分的转换, 乘二取整
0.6875
× 2
最高位 取 1 1.3750
0.375
× 2
取 0 0.750
× 2
取 1 1,50
0.5
× 2
最低位 取 1 1,0
从上至下写成从左至右 10110.6875D = 0,B
二进制数转换成八进制数与上述类似。
( 3.)十六进制数与二进制数之间的转换,
十六进制数转换为二进制:
9 A B, 7 C 5 H
1001 1010 1011, 0111 1100 0101B
二进制数转换十六进制数,
0001 1011 1110 0011, 1001 0111 1000B
1 B E 3, 9 7 8H
二、数码
1、机器数与真值
机器只认识二进制数,0,1。
这是因为,电路状态常常有两种情况,
如:电路的通、断; 高电平、低电平;可用 0,1表示。
在机器中,这种 0,1,0,1的表现形式称为机器数。
机器数分为无符号数、带符号数。
无符号数如,00000001,10010011,01010010,……
等等,范围,00H ~ FFH。
有符号数如,+1010110B,-1101001B,等等
01010110B,11101001B
2、机器数的编码及运算
对带符号数而言,有原码、反码、补码之分,计算机内一般使用补
码。
( 1) 原码
将数, 数码化,, 原数前, +” 用 0表示, 原数前, -” 用 1表示, 数
值部分为该数本身, 这样的机器数叫原码 。
设 X——原数;则 [X]原 = X( X0)
[X]原 = 2n-1 – X ( X0), n为字长的位数 。
如, [+3]原 = 00000011B
[-3]原 = 27 - ( -3) = 10000011B
0有两种表示方法,00000000—— +0
10000000 —— -0
原码最大、最小的表示,+127,-128
( 2) 反码
规定正数的反码等于原码;负数的反码是将原码的数值位各位
取反 。
[X]反 = X ( X0)
[X]反 =( 2n –1) + X ( X0) 如,
[+4]反 = [+4]原 = 00000100 B
[-4]反 =(28–1)+(-5)=11111111-00000101= 11111010 B
反码范围,-128 ~ +127
两个 0,+0 —— 00000000 B
-0 —— 11111111 B
运用补码可使减法变成加法 。
规定:正数的补码等于原码 。
负数的补码求法,1) 反码 + 1
2) 公式,[X]补 = 2n + X ( X<0)
如, 设 X = - 0101110 B, 则 [X]原 = 10101110 B
则 [X]补 = [X]反 + 1 = 11010001 + 00000001 = 11010010 B
如,[+6]补 = [+6]原 = 00000110 B
[-6]补 = 28 + ( -6) = 10000000– 00000110 = 11111010 B
8位补码的范围 –128 ~ +127。
0 的个数:只一个, 即 00000000
而 10000000 B是 -128的补码 。
原码、反码、补码对照表:见下表
12
3
( 3) 补码
补码的概念:现在是下午 3点, 手表停在 12点, 可正拨 3点, 也可倒拨 9点 。 即
是说 -9的操作可用 +3来实现, 在 12点里,3,-9互为补码 。
八位二进制数所能表示的数据范围
机器数 无符号数 原码 反码 补码
00000000 0 +0 +0 +0
00000001 1 +1 +1 +1
.,,,,
01111111 127 +127 +127 +127
10000000 128 -0 -127 -128
10000001 129 -1 -126 -127
.,,,,
.,,,,
11111110 254 -126 -1 -2
11111111 255 -127 -0 -1
( 4) 补码的运算
当 X≥0时, [X]补 = [X]反 =[X]原
[ [X]补 ]补 = [X]原
[X]补 + [Y]补 = [ X+Y ]补
[ X-Y ]补 = [ X+( -Y) ]补
例:已知 X=52 Y=38 求 X-Y
方法 1,减法:
X-Y = 52-38 =14
0 0 1 1 0 1 0 0
-) 0 0 1 0 0 1 1 0
0 0 0 0 1 1 1 0
方法 2,加法
X-Y = [ [ X-Y]补 ]补 = [ [X]补 +[-Y]补 ]补
=[ [52]补 +[ -38]补 ]补
=[ 14 ]补 =14
[52]补, 0 0 1 1 0 1 0 0
[-38]补, +) 1 1 0 1 1 0 1 0
1 0 0 0 0 1 1 1 0
自然丢失
计算机在做算术运算时, 必需检查溢出, 以防止发生错误
(5) 运算的溢出问题
由于计算机中表示数据的字长 ( 位数 ) 有一定限制,
所以数据的表示应有一个范围 。
如字长 8位时; 补码范围 -128~+127
若运算结果超出这个范围, 便溢出 。
例:
[98]补, 0 1 1 0 0 0 1 0
[25]补, +) 0 0 0 1 1 0 0 1
[123]补 0 0 1 1 1 1 0 1 1
未溢出 0 0
Cs+1 Cs( 未溢出 )
[85]补, 0 1 0 1 0 1 0 1
[47]补, +) 0 0 1 0 1 1 1 1
[132]补, 1 0 0 0 0 1 0 0
溢出 0 1
Cs+1 Cs ( 溢出 )
错:两个正数相加和为负数。
[- 85]补, 1 0 1 0 1 0 1 1
[- 47]补, +) 1 1 0 1 0 0 0 1
[- 132]补, 1 0 1 1 1 1 1 0 0
溢出 1 0
Cs+1 Cs
错:两个负数相加和为正数。
[- 19]补, 0 1 0 1 0 1 0 1
[- 79]补, +) 1 0 1 1 0 0 0 1
[- 98]补, 1 1 0 0 1 1 1 1
未溢出 1 1
Cs+1 Cs
错:两个负数相加和为正数。
总之:结果正确 ( 无溢出 ) 时, Cs+1 = Cs
结果错误 ( 溢出 ) 时, Cs+1≠ Cs
溢出判断:溢出 = Cs+1Cs( 即结果是 0为无溢出; 1为有溢出)
1,( 6) 十进制数的编码
对机器:二进制数方便,
对人,二进制数不直观, 习惯于十进制数 。
在编程过程中, 有时需要采用十进制运算, 但机器不认识十进制数 。
怎么办?
可以将十进制的字符用二进制数进行编码:
0 0000 5 0101 1010 1111
1 0001 6 0110 1011
2 0010 7 0111 1100
3 0011 8 1000 1101
4 0100 9 1001 1110
这叫做二进制数对十进制编码 ——BCD码 。
上述每 4位二进制数表示一个十进制字符, 这 4位中各位的权依次是:
8,4,2,1——8421 BCD码 。
BCD码的运算:
例,1 8
+) 3
2 1
0 0 0 1 1 0 0 0
+) 0 0 0 0 0 0 1 1
0 0 0 1 1 0 1 1
B是非 BCD码(错)
需进行十进制调整:
0 0 0 1 1 0 0 0
+) 0 0 0 0 0 0 1 1
0 0 0 1 1 0 1 1 (个位大于 9,应进 1)
+) 0 1 1 0 (加 6使进 1)
0 0 1 0 0 0 0 1 (结果形如 21)
BCD码加法规则:
两个 BCD数相加时,, 某位, 的和小于 10则保持不变;
两个 BCD数相加时,, 某位, 的和大于 9,则和数应加 6修正 。
BCD码减法规则:
两个 BCD数相减时,, 某位, 的差未发生借位, 则差数保持不
变;
两个 BCD数相减时,, 某位, 发生了借位, 其差应减 6修正 。
这里, 某位, 指 BCD数中的, 个位,,, 十位,,, 百
位,, ……
加法举例:
0 1 1 0 0 1 0 1 ( 6 5)
+) 1 0 0 1 0 1 1 1 ( 97)
1 1 1 1 1 1 0 0
+) 0 1 1 0 0 1 1 0 (加 66调整)
1 0 1 1 0 0 0 1 0 ( 162)
减法举例:
0 0 1 1 0 1 0 0 ( 3 4)
-) 0 0 0 1 0 1 0 1 ( 15)
0 0 0 1 1 1 1 1
-) 0 1 1 0 (减 6调整)
0 0 0 1 1 0 0 1 ( 29)
( 7) 字符信息的表示
计算机能识别 0,1,0,1,…… ;这些 0,1,0,1,…… 有的
代表数值, 有的仅代表要处理的信息 ( 如字母, 标点符号,
数字符号等文字符号 ), 所以, 计算机不仅要认识各种数字,
还要能识别各种文字符号 。 人们事先已对各种文字符号进行
二进制数编码 。
如, 美国信息交换标准码 ——ASCII码, 用一个字节表示一个
字符 。 低 7位是字符的 ASCII码值;最高位是通信时的
校验位 。
行
列
000 001 010 0 1 1 100 101 1 1 0 111
0000 N U L D L E SP 0 @ P
,
p
0001 S O H DC1 ! 1 A Q a q
0010 S T X DC2, 2 B R b r
0 0 1 1 ETX DC3 # 3 C S c s
0100 E O T DC4 $ 4 D T d t
0101 E N Q N A K % 5 E U e u
0 1 1 0 A C K S Y N & 6 F V f v
0 1 1 1 BEL ETB
’
7 G W g w
1000 BS C A N ( 8 H X h x
1001 HT EM ) 9 I Y i y
1010 LF S U B *, J Z j z
1 0 1 1 VT E S C +;
K [ k {
1 1 0 0 FF FS
, <
L \ l
|
1 1 0 1 CR GS
-
= M ] m }
1 1 1 0 SO RS
· >
N
↑
n
~
1111 SI US /
?
O _ o D E L
综上所述,
计算机中的数可以有各种不同的表示方法,
计算机中以一个字节为一个单元保存数据,
一个字节为 8位二进制数,可以有 256种组合,
也就是可以表示 256个数据,
我们称它为机器数,每一个机器数实际表示的是什么,
要看采用的是那种表示方法。
§ 1-1 单片机概述
§ 1-2 数制及数码
内容提要,
§ 1-1 单片机概述
一、什么是单片机
单片机就是单片微型计算机 (Single-Chip Microcomputer)。
微型计算机系统的硬件部分通常由五部分组成,
输入设备 运算器 输出设备
控制器 存储器
这种计算机系统通常由多块印刷电路板制成:
多板机
主板内存条 CPU
CPUCPU芯片
内存条存储器芯片输入输出接口
芯片
定时计数器
芯片
A/D,D/A
芯片
单板机
印
刷
电
路
板
单
硅
晶
片
CPU存储器
控制电路 定时器时钟电路
I / O口
单片机
( 1) 体积小,重量轻;
( 2) 可靠性高,运行速度快,抗干扰能力强;
( 3) 控制功能强,使用灵活,性价比高;
( 4) 易扩展,易于开发;
( 5) 受集成度限制,片内存储器容量较小,一般
内 ROM在 8KB以下,内 RAM在 256B以内。
单片机是应工业测控的需要而诞生的,它的结构与指令功能
都是按照工业控制要求设计的,故又称单片微控制器 (Single
Chip Microcontroller)。
单片机特点:
以单片机为核心的应用系统广泛应用于:
家用电器;
工业过程控制;
仪器仪表;
智能武器;
航空、汽车等领域。
二、单片机系统的组成
CPU
AB
DB
CB
存储器 接口部件
键盘 显示器 数码管 打印机
定时计数器
单
片
机
系
统
硬件
部分
软件
部分
单片
机芯
片
外围
器件
CPU
内存
中断控制逻辑
通用接口
运算器
寄存器组
控制器
并行 I / O口
串行 UART
定时 /计数器
ADC0809,DAC0832
8253
8251
8255A,8155
2764,6264指令系统
应用
程序
§ 1-2 数制及数码
计算机只识别和处理数字信息,数字是以二进制数的形式表示的。
它易于物理实现,同时,资料存储、传送和处理简单可靠;运算
规则简单,使逻辑电路的设计、分析、综合方便,使计算器具有
逻辑性。
一、数制
1、常用数制
( 1.)十进制数:
1985 = 1000+900+80+5
= 1× 103+9× 102+8× 101+5× 100
特点,有 0 ~ 9 十个不同的符号。
逢十进一。
一般用下脚标 D 表示,如 1985D,或无下脚标。
( 2.)二进制数:
特点:有 0,1两个不同的符号。
逢二进一。二进制数的下脚标为 B
例如:对于整数,
1001B=1× 23+0× 22+0× 21+1× 20 = 9D
对于小数,
0.101B = 1× 2-1 + 0× 2-2 + 1× 2-3 = 0.625D
二进制数每一位的权是:以小数点分界,
…..2 4,23,22,2 1,2 0, 2 -1,2 -2,2 - 3,……
( 3.)十六进制数:
有 0~ 9, A,B,C,D,E,F 共十六个不同的符号。
逢十六进位。用下脚标, H” 表示十六进制数。
例,327 H = 3× 162+2× 161+7× 160
= 807D
3AB, 11H = 3× 162+A× 161+B× 160+1× 161+1× 16-2
=939, 0664 D
2、数制的转换
( 1.) 二进制转换为十进制数
方法, 按权展开。
111.101B =1× 22+1× 2 1+1× 2 0 +1× 2 -1 +0× 2 -2
+1× 2 –3
=4+2+1+0.5+0.125
=7.625D
( 2.) 十进制数转换为二进制数
方法,整数部分除二取余,小数部分乘二取整
45 余数
22 1
11 0
5 1
2 1
1 0
0 1
2
2
2
2
2
2
即 45 = ( 101101) 2
例 1、将十进制数 45转换成二进制数。
例 2:十进制小数部分的转换, 乘二取整
0.6875
× 2
最高位 取 1 1.3750
0.375
× 2
取 0 0.750
× 2
取 1 1,50
0.5
× 2
最低位 取 1 1,0
从上至下写成从左至右 10110.6875D = 0,B
二进制数转换成八进制数与上述类似。
( 3.)十六进制数与二进制数之间的转换,
十六进制数转换为二进制:
9 A B, 7 C 5 H
1001 1010 1011, 0111 1100 0101B
二进制数转换十六进制数,
0001 1011 1110 0011, 1001 0111 1000B
1 B E 3, 9 7 8H
二、数码
1、机器数与真值
机器只认识二进制数,0,1。
这是因为,电路状态常常有两种情况,
如:电路的通、断; 高电平、低电平;可用 0,1表示。
在机器中,这种 0,1,0,1的表现形式称为机器数。
机器数分为无符号数、带符号数。
无符号数如,00000001,10010011,01010010,……
等等,范围,00H ~ FFH。
有符号数如,+1010110B,-1101001B,等等
01010110B,11101001B
2、机器数的编码及运算
对带符号数而言,有原码、反码、补码之分,计算机内一般使用补
码。
( 1) 原码
将数, 数码化,, 原数前, +” 用 0表示, 原数前, -” 用 1表示, 数
值部分为该数本身, 这样的机器数叫原码 。
设 X——原数;则 [X]原 = X( X0)
[X]原 = 2n-1 – X ( X0), n为字长的位数 。
如, [+3]原 = 00000011B
[-3]原 = 27 - ( -3) = 10000011B
0有两种表示方法,00000000—— +0
10000000 —— -0
原码最大、最小的表示,+127,-128
( 2) 反码
规定正数的反码等于原码;负数的反码是将原码的数值位各位
取反 。
[X]反 = X ( X0)
[X]反 =( 2n –1) + X ( X0) 如,
[+4]反 = [+4]原 = 00000100 B
[-4]反 =(28–1)+(-5)=11111111-00000101= 11111010 B
反码范围,-128 ~ +127
两个 0,+0 —— 00000000 B
-0 —— 11111111 B
运用补码可使减法变成加法 。
规定:正数的补码等于原码 。
负数的补码求法,1) 反码 + 1
2) 公式,[X]补 = 2n + X ( X<0)
如, 设 X = - 0101110 B, 则 [X]原 = 10101110 B
则 [X]补 = [X]反 + 1 = 11010001 + 00000001 = 11010010 B
如,[+6]补 = [+6]原 = 00000110 B
[-6]补 = 28 + ( -6) = 10000000– 00000110 = 11111010 B
8位补码的范围 –128 ~ +127。
0 的个数:只一个, 即 00000000
而 10000000 B是 -128的补码 。
原码、反码、补码对照表:见下表
12
3
( 3) 补码
补码的概念:现在是下午 3点, 手表停在 12点, 可正拨 3点, 也可倒拨 9点 。 即
是说 -9的操作可用 +3来实现, 在 12点里,3,-9互为补码 。
八位二进制数所能表示的数据范围
机器数 无符号数 原码 反码 补码
00000000 0 +0 +0 +0
00000001 1 +1 +1 +1
.,,,,
01111111 127 +127 +127 +127
10000000 128 -0 -127 -128
10000001 129 -1 -126 -127
.,,,,
.,,,,
11111110 254 -126 -1 -2
11111111 255 -127 -0 -1
( 4) 补码的运算
当 X≥0时, [X]补 = [X]反 =[X]原
[ [X]补 ]补 = [X]原
[X]补 + [Y]补 = [ X+Y ]补
[ X-Y ]补 = [ X+( -Y) ]补
例:已知 X=52 Y=38 求 X-Y
方法 1,减法:
X-Y = 52-38 =14
0 0 1 1 0 1 0 0
-) 0 0 1 0 0 1 1 0
0 0 0 0 1 1 1 0
方法 2,加法
X-Y = [ [ X-Y]补 ]补 = [ [X]补 +[-Y]补 ]补
=[ [52]补 +[ -38]补 ]补
=[ 14 ]补 =14
[52]补, 0 0 1 1 0 1 0 0
[-38]补, +) 1 1 0 1 1 0 1 0
1 0 0 0 0 1 1 1 0
自然丢失
计算机在做算术运算时, 必需检查溢出, 以防止发生错误
(5) 运算的溢出问题
由于计算机中表示数据的字长 ( 位数 ) 有一定限制,
所以数据的表示应有一个范围 。
如字长 8位时; 补码范围 -128~+127
若运算结果超出这个范围, 便溢出 。
例:
[98]补, 0 1 1 0 0 0 1 0
[25]补, +) 0 0 0 1 1 0 0 1
[123]补 0 0 1 1 1 1 0 1 1
未溢出 0 0
Cs+1 Cs( 未溢出 )
[85]补, 0 1 0 1 0 1 0 1
[47]补, +) 0 0 1 0 1 1 1 1
[132]补, 1 0 0 0 0 1 0 0
溢出 0 1
Cs+1 Cs ( 溢出 )
错:两个正数相加和为负数。
[- 85]补, 1 0 1 0 1 0 1 1
[- 47]补, +) 1 1 0 1 0 0 0 1
[- 132]补, 1 0 1 1 1 1 1 0 0
溢出 1 0
Cs+1 Cs
错:两个负数相加和为正数。
[- 19]补, 0 1 0 1 0 1 0 1
[- 79]补, +) 1 0 1 1 0 0 0 1
[- 98]补, 1 1 0 0 1 1 1 1
未溢出 1 1
Cs+1 Cs
错:两个负数相加和为正数。
总之:结果正确 ( 无溢出 ) 时, Cs+1 = Cs
结果错误 ( 溢出 ) 时, Cs+1≠ Cs
溢出判断:溢出 = Cs+1Cs( 即结果是 0为无溢出; 1为有溢出)
1,( 6) 十进制数的编码
对机器:二进制数方便,
对人,二进制数不直观, 习惯于十进制数 。
在编程过程中, 有时需要采用十进制运算, 但机器不认识十进制数 。
怎么办?
可以将十进制的字符用二进制数进行编码:
0 0000 5 0101 1010 1111
1 0001 6 0110 1011
2 0010 7 0111 1100
3 0011 8 1000 1101
4 0100 9 1001 1110
这叫做二进制数对十进制编码 ——BCD码 。
上述每 4位二进制数表示一个十进制字符, 这 4位中各位的权依次是:
8,4,2,1——8421 BCD码 。
BCD码的运算:
例,1 8
+) 3
2 1
0 0 0 1 1 0 0 0
+) 0 0 0 0 0 0 1 1
0 0 0 1 1 0 1 1
B是非 BCD码(错)
需进行十进制调整:
0 0 0 1 1 0 0 0
+) 0 0 0 0 0 0 1 1
0 0 0 1 1 0 1 1 (个位大于 9,应进 1)
+) 0 1 1 0 (加 6使进 1)
0 0 1 0 0 0 0 1 (结果形如 21)
BCD码加法规则:
两个 BCD数相加时,, 某位, 的和小于 10则保持不变;
两个 BCD数相加时,, 某位, 的和大于 9,则和数应加 6修正 。
BCD码减法规则:
两个 BCD数相减时,, 某位, 的差未发生借位, 则差数保持不
变;
两个 BCD数相减时,, 某位, 发生了借位, 其差应减 6修正 。
这里, 某位, 指 BCD数中的, 个位,,, 十位,,, 百
位,, ……
加法举例:
0 1 1 0 0 1 0 1 ( 6 5)
+) 1 0 0 1 0 1 1 1 ( 97)
1 1 1 1 1 1 0 0
+) 0 1 1 0 0 1 1 0 (加 66调整)
1 0 1 1 0 0 0 1 0 ( 162)
减法举例:
0 0 1 1 0 1 0 0 ( 3 4)
-) 0 0 0 1 0 1 0 1 ( 15)
0 0 0 1 1 1 1 1
-) 0 1 1 0 (减 6调整)
0 0 0 1 1 0 0 1 ( 29)
( 7) 字符信息的表示
计算机能识别 0,1,0,1,…… ;这些 0,1,0,1,…… 有的
代表数值, 有的仅代表要处理的信息 ( 如字母, 标点符号,
数字符号等文字符号 ), 所以, 计算机不仅要认识各种数字,
还要能识别各种文字符号 。 人们事先已对各种文字符号进行
二进制数编码 。
如, 美国信息交换标准码 ——ASCII码, 用一个字节表示一个
字符 。 低 7位是字符的 ASCII码值;最高位是通信时的
校验位 。
行
列
000 001 010 0 1 1 100 101 1 1 0 111
0000 N U L D L E SP 0 @ P
,
p
0001 S O H DC1 ! 1 A Q a q
0010 S T X DC2, 2 B R b r
0 0 1 1 ETX DC3 # 3 C S c s
0100 E O T DC4 $ 4 D T d t
0101 E N Q N A K % 5 E U e u
0 1 1 0 A C K S Y N & 6 F V f v
0 1 1 1 BEL ETB
’
7 G W g w
1000 BS C A N ( 8 H X h x
1001 HT EM ) 9 I Y i y
1010 LF S U B *, J Z j z
1 0 1 1 VT E S C +;
K [ k {
1 1 0 0 FF FS
, <
L \ l
|
1 1 0 1 CR GS
-
= M ] m }
1 1 1 0 SO RS
· >
N
↑
n
~
1111 SI US /
?
O _ o D E L
综上所述,
计算机中的数可以有各种不同的表示方法,
计算机中以一个字节为一个单元保存数据,
一个字节为 8位二进制数,可以有 256种组合,
也就是可以表示 256个数据,
我们称它为机器数,每一个机器数实际表示的是什么,
要看采用的是那种表示方法。