内容正文:
在电影《孤注一掷》中,程序员潘生数次向他人求救,但都没能成功。最后终于靠一直笔画数字6的手势,让朋友知道自己在求救,帮报警。
6=110?
1
项目二 探究计算机中的数据表示
--数值数据的编码
2
1.为什么计算机内部都使用二进制?
2.计算机是怎样进行十进制数的运算?
计算机是由逻辑电路组成,逻辑电路只有高低二种电位状态,
正好可以用0 和 1表示,
因此计算机采用二进制来存储和表示数据。
3
数值数据的编码过程:
4
数制的概念:
数制指的是用特定符号和规则表示数值的计数系统,核心是“逢几进一”的进位规则与固定的基数(计数符号的个数)。
在日常生活中,大家还有接触过哪些进制的数值呢?
一年有12个月(12进制);
一分为60秒(60进制)
1米等于10分米(10进制)
古代秤是十六两为一斤(十六进制)
……
5
一个数所使用的符号的个数。
以小数点为界,
向左(整数部分)各位的位权从R0、R1、R2、…开始;
向右(小数部分)各位的位权从R-1、R-2、 …开始。
数字中每一位所对应的权重
简写
D
B
O或Q
H
数码
6
二进制数的算数规则
加运算:0+0=0,0+1=1,1+0=0,1+1=10(逢二进一)
减运算:1-1=0,1-0=1,0-0=0,10-1=1(向高位借1当二)
乘运算:0*0=0,0*1=0,1*0=0,1*1=1
除运算:0/1=0,1/1=1
7
1. 纯整数情况:除2反向取余( 从下到上 )
37
余 数
2
18
9
2
2
4
2
1
2
2
1
0
0
低位
高位
1
0
2
0
1
100101
(37)10 =( )2
例: (43)10 =( )2
101011
除到商是0为止
转换(十进制转二进制)
8
2.带小数的情况:乘2正向取整( 从上到下 )
× 2
1.000
0.375
× 2
0.750
× 2
1.500
… 0
取整
… 1
… 1
(0.375)10=( )2
0.011
低位
高位
乘到所有小数位数都是0为止
(0.324)2=( )10
精度:保留小数点后几位
转换(十进制转二进制)
9
方法:按权相加法,即将每一位上的数字字符乘以它对应的位权,其积相加
(37)10 =( )2
100101
(0.375)10=( )2
0.011
(100101)2=1×20 + 0×21 + 1×22 + 0×23+0×24 + 1×25
=1+0+4+0+0+32
=(37)10
(0.011)2 =0×2-1 + 1×2-2 + 1×2-3
=0+0.25+0.125
=(0.375)10
以小数点为界,
向左(整数部分)各位的位权从R0、R1、R2、…开始;
向右(小数部分)各位的位权从R-1、R-2、 …开始。
转换(二进制转十进制)
10
转换(二进制转十进制)
练习题:
1、(4.5)10=( )2
100.1
2、(11.1)2=( )10
3.5
11
计算机中数值数据的编码方式分为原码, 反码, 补码。
计算机中是数值数据是以补码的方式表示的 。
1 byte=8 bit
编码
12
原 码:
首位为符号位,其余为真值
6 1 1 0
-6 1 1 0
原码 0 0 0 0 0 1 1 0
原码 1 0 0 0 0 1 1 0
(6)10=( )2
110
6
编码
13
6 1 1 0
原码 0 0 0 0 0 1 1 0
反码 0 0 0 0 0 1 1 0
首位为符号位,其它位分正数和负数两种情况。
正数反码:所有位和原码一样;
负数反码:除了符号位和原码一样,其他位相反。
-6 1 1 0
原码 1 0 0 0 0 1 1 0
反码 1 1 1 1 1 0 0 1
反 码:
编码
14
正数:原码、反码、补码的表示都一样。
负数:等于反码加1
6 1 1 0
原码 0 0 0 0 0 1 1 0
反码 0 0 0 0 0 1 1 0
-6 1 1 0
原码 1 0 0 0 0 1 1 0
反码 1 1 1 1 1 0 0 1
补码 0 0 0 0 0 1 1 0
补码 0 0 0 0 0 1 1 1
补 码:
编码
15
编码
练习:
[+10100]原码 =
[+10100]反码 =
[+10100]补码 =
[-10100]原码 =
[-10100]反码 =
[-10100]补码 =
0 00 10100
0 00 10100
0 00 10100
1 00 10100
1 11 01011
1 11 01100
16
课堂小结
十进制转二进制:
1. 纯整数情况:除2反向取余
2.带小数的情况:乘2正向取整
二进制转十进制:
按权相加法,即将每一位上的数字字符乘以它对应的位权,其积相加
17
C
1.在《数据与计算》中,关于数值数据编码的描述,以下哪项是错误的?( )
A.数值数据在计算机中以补码形式表示
B.正数的原码、反码、补码相同
C.负数的反码是其原码按位取反
D.负数的补码是其反码加1
课堂练习
18
A.1100 B.1101 C.1011 D.1111
1、二进制数0101与0111相加的运算结果是( )
加运算:0+0=0,0+1=1,1+0=0,1+1=10(逢二进一)
减运算:1-1=0,1-0=1,0-0=0,10-1=1(向高位借1当二)
乘运算:0*0=0,0*1=0,1*0=0,1*1=1
除运算:0/1=0,1/1=1
A
课堂练习
19
2、下列将二进制数(1011)2 转换成十进制数的算式中,正确的是( )
A.1×23+1×22+0×21+0×20
B.1×23+0×22+1×21+1×20
C 1×23+1×22+1×21+0×20
D.1×23+1×22+0×21+1×20
B
课堂练习
20
3.十进制数43转换成二进制数是( )
A.110101 B.101011
C.111100 D.110011
B
课堂练习
21
4.现已知负数的反码是在其原码的基础上,符号位不变,其余各个位取反。则下列四个十进制数中,反码为11111001 的是( )
A.110 B.-10 C.-6 D.6
C
反码为11111001 ,其原码为10000110,二进制是 -110
1001001对应十进制为 22*1 + 21*1 + 20*0=6
课堂练习
22
THANK YOU
感谢大家观看
23
$