微机原理-计算机的基础知识
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
二进制数、十进制数和十六进制数间的相互转换
二进制数转换为十六进制数 十六进制数转换为二进制数
只需用4位二进制数代替1位十六进制数即可。 如:
3AB9H=0011 1010 1011 1001B
二进制数、十进制数和十六进制数间的相互转换
二进制数转换为十六进制数 十六进制数转换为二进制数
十六进制数转换为十进制数 将十六进制数按权展开相加,如: 1F3DH=163×1+162×15+161×3+160×13 =4096×1+256×15+16×3+1×13 =4096+3840+48+13=7997
二进制数、十进制数和十六进制数间的相互转换
二进制数转换为十六进制数 十六进制数转换为二进制数 十六进制数转换为十进制数 十进制整数转换为十六进制数 十进制数转换为二进制数
十进制转换为二进制时,常采用 “倒除2取余 法”。
125 =01111101B
二进制数、十进制数和十六进制数间的相互转换
二进制数、十进制数和十六进制数间的相互转换
二进制数转换为十六进制数 十六进制数转换为二进制数 十六进制数转换为十进制数 十进制整数转换为十六进制数
可用出16取余法,即用16不断地去除待转换的十 进制数,直至商等于0为止。将所得的各次余数, 依倒序排列,即可得到所转换的十六进制数。
即38947=9823H
[X1]反=00000100B=04H X2=-4 [X2]原=10000100B=84H
[X2]反=11111011B= FBH
取反
➢ 原码 ➢ 反码 ➢ 补码
✓ 常规求补码法
正数的补码与原码相同;负数补码为其反码加1。 例:X1=+4: [X1]原=[X1]反=[X1]补= 00000100B=04H
1101.101B=1×23+1×22+0×21+1×20+ +1×2-1+0×2-2+1×2-3=13.625
计算机中数的几个概念
1.机器数与真值
机器数:机器中数的表示形式,其位数通常为8的 整数倍。
真值:机器数所代表的实际数值的正负和大小,是人 们习惯表示的数。
计算机中的机器数分为有符号数和无符号数:
36 -2 +127 3.下列2字节十六进制数均为补码,试写出其对应的真值
4000H FF80H 4. 以下两个1字节数相加,分别给出它们的运算结果、CY标
志及OV标志。 (1)69H,9AH (2)5AH,6EH
不同进位记数制对照表
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 ENG 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
B(binary)表示二进制数制; D(decimal)或不带字母表示十进制数制; H(hexadecimal)表示十六进制数制。但编程
时通常用0x**或0X**表示。
练习
判断数字0110B , 2B , 2BH是否为正确的数的 表达? 0110B是正确的二进制数,正确。 2B是错误的。 2BH是正确的十六进制数。
➢ 原码
数值部分用其绝对值,正数的符号位用“0”表 示,负数的符号位用“1”表示。如:
X1=+4=+00000100B [X1]原=00000100B
X2=-4=-00000100B
[X2]原=10000101B
符号位
➢ 原码 ➢ 反码
正数的反码与原码相同; 负数反码:符号位不变,数值部分按位取反。 例:X1=+4 [X1]原=00000100B=04H
在程序中,字符可用ASCII码表示, 也可以用加引号的字符表示,例如
字符“4”,可以用34H表示,也可以。用’4’表示,此时, 它只有符号的意义,而无数量的概念
ASCII码—美国标准AS信CII 字息符表交换代码
H
L
000 001 010 011 100 101 110 111
0000 NUL DLE SP
第0章 计算机的基础知识
内容提要
计算机中的数制与码制
计算机中的数
计算机中的数字电路具有两种不同的稳定状态且 能相互转换,即“0”和“1”两种状态。计算机处理 的一切信息均用二进制数表示,但是二进制数书写 起来太长,所以微型计算机中的二进制数编程时都 采用十六进制来缩写。
为了区别十进制数、二进制数及十六进制数3种 数制,在数的后面加一个字母以进行区别。用
[64]原 =0100 0000B [-10]原=1000 1010B
[64]补 =0100 0000B [-10]补 =1111 0110B
0100 0000B + 1000 1010B
1100 1010B 错误
0100 0000B + 1111 0110B 1 0011 0110B
正确
➢ 无符号数和补码的关系
无符号数:机器数的最高位没有符号意义,只有数值 意义。
8位无符号数的表示范围为 0~255 16位无符号数的表示范围为0~65535
有符号数:机器数的最高位为符号位,符号位为“0” 表示正数,符号位为“1” 表示负数。 注:只有8位、16位或32位机器数的最高位才是符号位。
有符号数有原码、反码和补码三种表示法。
n
无符号数
补码
8
0~255
-128~ 127
128+128 溢出 CY
[72]补+[80]补 溢出 OV
进位和溢出
例 69H+32H
69H = 105 32H = 50 105+50=155
69H =+ 105 32H = +50 (+105)+(+50)=+155>+127
CY=0 OV=1
进位和溢出
二进制数转换为十六进制数 十六进制数转换为二进制数 十六进制数转换为十进制数 十进制整数转换为十六进制数 十进制数转换为二进制数
如果是带小数的情况,小数部分则采用“乘2取整”法 125.375 =1111101.011B
二进制数、十进制数和十六进制数间的相互转换
二进制数转换为十六进制数 十六进制数转换为二进制数 十六进制数转换为十进制数 十进制整数转换为十六进制数 十进制数转换为二进制数 二进制数转换为十进制数
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
注:H 表示高 3 位,L 表示低 4 位。
作业
1. 完成下列数值转换。 (1)01010011B=( )D=( )H (2)10.101B= ( )H= ( )D (3)63.75D= ( )B= ( )H 2.将下列数值用补码形式表示(字长限制为1个字节)
例
求-27的补码表示 先写出原码形式,应为
10011011B 补码应为
11100101B
➢ 原码
有符号数都是以补码形式存储的。
➢ 反码 8位补码数的数值范围为 -128~127(80H~7FH)。 ➢ 补码 16位补码数的数值范围为 -32768~32767
64-10=64+(-10)= 54
X2= - 4:[X2]原 =10000100B [X2]反 = 11111011B [X2]补 = [X2] 反+1= 1111100B=0FCH
➢ 原码
➢ 反码
➢ 补码
✓ 常规求补码法 ✓ 快速求补码法
将负数原码的最前面的1和最后一个1之间的每 一位取反。
例如:x=-4: [x]原 = 10000100 [x]补=11111100=0FCH 取反
OV= CY⊕ CY-1
结论:溢出和进位并非有必然的联系
运算对标志的影响举例
0000 0011 +0000 1100
0000 1111
CY=0 OV=0
0000 0110 +1111 1100 1 0000 0010
CY=1 OV=0
ASCII码
美国标准信息交换码ASCII码,用8 位二进制编码表示字符,用于计算机与 计算机、计算机与外设之间传递信息, 每一个符号都有对应的ASCII码,常用 数字和字母ASCII码如表所列。
二进制数、十进制数和十六进制数间的相互转换
二进制数转换为十六进制数 1111111000111B 将二进制数从右(最低位)向左每4位为1组分
组,若最后一组不足4位,则在其左边添加0,以 凑成4位,每组用1位十六进制数表示。如:
1111111000111B→1 1111 1100 0111B→ 0001 1111 1100 0111B=1FC7H
1111 0110B
[1111 0110B] 无符号数= 246
[1111 0110B] 补码= -10
补码和无符号数描述的是同一个信息,只是 对进位位的影响不同。无符号数的运算影响的是 进位标志位(CY),补码影响的是溢出标志位 (OV)。
进位和溢出
溢出:不同字长的整数都有一定的范围, 如果两个数运算的结果超出了相应的范围,我 们就说发生了溢出。
例 69H+32H
01101001
0 01 0 1 1 0 0 1 0 10011011
CY CY-1
CY⊕CY-1=0⊕1=1…..有溢出 OV=1 无进位 CY=0
进位CY: 看最高位是否有进位就可以了,有进位CY=1, 无进位CY=0。
溢出OV:最高位和次高位同时出现进(借)位,或同时不出 现进(借)位,则计算不出现溢出;反之,则出现溢出。