当前位置:
文档之家› 大学计算机基础3. 第2章-进制转换
大学计算机基础3. 第2章-进制转换
2016年秋
大学计算机基础
6
引子
十进制
二进制
2016年秋
大学计算机基础
7
主要内容
十进制
二进制
八进制
2016年秋 大学计算机基础
十六进制
8
2.1.3 十进制转换为二进制
十进制整数568->二进制整数
568.125
整数 小数
十进制小数0.125->二进制小数
2016年秋
大学计算机基础
9
2.1.3十进制整数转换为二进制
符号集、语法规则、语义规则、基本运算
基数和位权 二进制算术运算
类比十进制,竖式
二进制逻辑运算
真与假,与、或、非、异或
2016年秋
大学计算机基础
3
2.1.1剖析“R进制”
十进制 5 4 3.2 1
↓ ↓ ↓ ↓↓
102 101 100 10-1 10-2Biblioteka R进制 a b c.d e
↓ ↓ ↓ ↓↓
2016年秋 大学计算机基础 12
2.1.3 十进制整数转换为二进制
十进制整数 二进制整数
假设:(N)10 =(anan1 … a2a1a0)2
转换方法:除2取余
等式两边同时除2 商:(anan1 … a2a1)2 余数: a0 两边再同时除2 商: (anan1 … a2)2 余数: a1 如此下去,直到商为0 依次得到的余数就是: a0、 a1、a2 、 …、an 逆序之后就是(anan1 … a2a1a0)2
2.1.3 十进制小数转换为二进制
十进制小数 二进制小数
2016年秋 大学计算机基础 13
2.1.3 十进制整数转换为二进制
(22)10=( 1 0 1 1 0 )2
2 2 22 11 2 5 0 1 1 0 1
2 2 2 1
0
2016年秋
大学计算机基础
14
2.1.3 十进制转换为二进制
十进制整数568->二进制整数 “除2取余”
568.125
整数 小数
2016年秋
大学计算机基础
11
为何“除2取余”?
(N)10=( a4 a3 a2 a1 a0)2
(N)10=a4x24+a3x23+a2x22+a1x21+a0x20 2 a4x24+a3x23+a2x22+a1x21+a0 2 a4x23+a3x22+a2x21+a1 …...……. a0 2 a4x22+a3x21+a2 …………. a1 2 a4x21+a3 ……….…. a2 2 a4 ……….…. a3 0 …………. a4
想想十进制整数是怎么通过 算术运算得到各位数字的?
“除10取余”
十进制整数 二进制整数
“除2取余”?
2016年秋
大学计算机基础
10
尝试:除2取余?
十进制整数 二进制整数
举例:( 37 )10转换成二进制
2 2
37
18 2 9 2 4 2 2 2 1 0
1 0
1 0 0 1 (37)10 = (100101)2
基本思想
一个数位上的数码与该位具有的“位权”相乘,其 积就是该位数值的大小 数的值为各数位数值之和
因此,有公式 (N)R = (dn-1dn-2⋯d1d0 . d-1d-2 ⋯ d-m) R = dn-1Rn-1+dn-2Rn-2+ ⋯ +d1R1+d0 R0 + d-1 R-1 + d-2 R -2 + ⋯ + d-m R-m n 1 i = d R i 十进制表示
R2 R1 R0 R-1 R-2
百
十 个
5*102 + 4*101 + 3*100 + 2*10-1 + 1*10-2=543.21 a*R2 + b*R1 + c*R0 + d*R-1 + e*R-2
2016年秋 大学计算机基础 4
上讲回顾:进制的计数
任何进制的一个数可以转换为十进制数的 多项式表示形式
2016年秋
a-2x2-1+a-3x2-2+a-4x2-3 (x2 a-3x2-1+a-4x2-2 (x2 a-4x2-1 (x2 0
大学计算机基础 18
2.1.3十进制小数转换为二进制
(0.6875)10 = ( 0.1011)2
0. 1. 0. 1. 1.
6875 ( 2 375 75 5 0
2016年秋
大学计算机基础
19
2.1.3 十进制小数转换为二进制
十进制小数 二进制小数
举例:将(0.32)10转换为二进制数 0 . 32 ( 2 高位 0 64 1 28 0 56 (0.32)10 ≈ (0. 0101)2 1 12 0 24 低位 0 48
2016年秋 大学计算机基础 20
第二章第2讲 进制之间的转换
任 小 广 讲师 计算机学院611教研室
本讲介绍
2.1 进制
2.1.1 进制的概念 2.1.2 二进制、八进制和十六进制 2.1.3 进制之间的转换
二进制与十进制之间的转换 二进制与八进制、十六进制之间的转换
2016年秋
大学计算机基础
2
上讲回顾(进制)
组成
十进制小数0.125->二进制小数
?
2016年秋 大学计算机基础 15
2.1.3十进制小数转换为二进制
想想十进制小数是怎么通过 算术运算得到各位数字的? 乘10取整
十进制小数 二进制小数
乘2取整?
2016年秋
大学计算机基础
16
尝试:乘2取整?
十进制小数 二进制小数
举例:将(0.71875)10转换为二进制数 0 . 71875 ( 2 高位 1 . 4375 0 . 875 1 . 75 1. 5 (0.71875)10 =(0.10111)2 低位 1. 0
2016年秋
i m
大学计算机基础
5
二、八、十六进制转换为十进制
(N)R = (dn-1dn-2⋯d1d0 . d-1d-2 ⋯ d-m) R
=
i m
dR
i
n 1
i
(100.01)2=1x22+0x21+0x20+0x2-1+1x2-2=(4.25)10 (41.2)8=4x81+1x80+2x8-1=(33.25)10 (2F.1)16=2x161+15x160+1x16-1=(47.0625)10
2016年秋
大学计算机基础
17
2.1.3 十进制小数转换为二进制
(N)10=( 0.a-1 a-2 a-3 a-4 )2
(N)10=a-1x2-1+a-2x2-2+a-3x2-3+a-4x2-4
整数 部分 a-1x2-1+a-2x2-2+a-3x2-3+a-4x2-4 (x2
a-1 a-2 a-3 a-4