Download presentation
Presentation is loading. Please wait.
Published byCatalina Poblete Modified 5年之前
1
第一章 基础知识 1.1 进位计数制与不同基数的数之间的转换 1.2 二进制数和十六进制数运算 1.3 计算机中数和字符的表示
第一章 基础知识 1.1 进位计数制与不同基数的数之间的转换 1.2 二进制数和十六进制数运算 1.3 计算机中数和字符的表示 1.4 几种基本的逻辑运算
2
1.1 进位计数制与不同基数的数之间的转换 1.1.1 二进制数 1.1.2 二进制数和十进制数之间的转换
1.1 进位计数制与不同基数的数之间的转换 二进制数 二进制数和十进制数之间的转换 十六进制数及其与二进制、十进制数 之间的转换
3
1.1.1 二进制数 作用:计算机中存储及计算数据 基数:二进制数的基数为2{0,1} 规则:逢二进一 加权表达式:
二进制数 作用:计算机中存储及计算数据 基数:二进制数的基数为2{0,1} 规则:逢二进一 加权表达式: 二进制数anan-1……a0b1b2……bm的值为 an2n+an-12n-1+…a020+b12-1+b22-2+…bm2-m
4
1.1.2 二进制数和十进制数之间的转换 二进制转换为十进制 规则:各位二进制数码乘以与其对应的权之和
二进制数和十进制数之间的转换 二进制转换为十进制 规则:各位二进制数码乘以与其对应的权之和 二进制数anan-1……a0b1b2……bm对应的十进制数为 an2n+an-12n-1+…a020+b12-1+b22-2+…bm2-m 十进制转换为二进制 1.降幂法 2.除法
5
1.1.2 二进制数和十进制数之间的转换 降幂法 转换规则:首先写出要转换的十进制数,再写出所有小于此数的各位二进制权值,然后用要转换的十进制数减去与它 最相近的二进制权值,如够减则减去并在相应位记为1,如不够减则在相应位记以0并跳过此位;如此不断反复,直到差为0为止。 例:N= D(计算过程) 小于N的二进制权: 对应的二进制数 : N= D= B
6
1.1.2 二进制数和十进制数之间的转换 降幂法计算过程 整数部分: 117-26=53 (a6=1) 53-25=21 (a5=1)
二进制数和十进制数之间的转换 降幂法计算过程 整数部分: = (a6=1) 53-25= (a5=1) 21-24= (a4=1) (a3=0) 5-22= (a2=1) (a1=0) 1-20= (a0=1) 小数部分: = (b1=1) = (b2=1) (b3=0) = (b4=1)
7
二进制数和十进制数之间的转换 除法 转换规则:把要转换的十进制数的整数部分不断除以2,并记下余数,直到商为0止;对于被转换的十进制数的小数部分则应不断的乘以2,并记下其整数部分,直到结果的小数部分为0止。 例:N= D 计算过程如下: 整数部分 小数部分 117/2=58 (a0=1) ×2=1.625 (b1=1) 58/2=29 (a1=0) ×2= (b2=1) 29/2=14 (a2=1) ×2= (b3=0) 14/2= (a3=0) ×2= (b4=1) 7/2= (a4=1) 3/2= (a5=1) 1/2= (a6=1) N= D= B
8
1.1.3 十六进制数及其与二进制、十进制数之间的转换
十六进制数及其与二进制、十进制数之间的转换 十六进制数的表示 十六进制与二进制之间的转换 二进制转换为十六进制,只要把二进制数从低位到高位每四位一组,直接用十六进制数来表示即可; 例: B=35BFH 而十六进制转换为二进制,把十六进制数中的每一位用四位二进制数表示即可。 例:A19CH= B 十六进制与十进制之间的转换(参见二进制与十进制之间的转换) 八进制与二进制之间的转换(参见十六进制与二进制之间的转换) 八进制与十进制之间的转换(参见二进制与十进制之间的转换)
9
1.2 二进制数和十六进制数运算 1.2.1 二进制数运算 1.加法规则 2.乘法规则 1.2.2 十六进制数运算
1.2 二进制数和十六进制数运算 二进制数运算 1.加法规则 2.乘法规则 十六进制数运算 规则:参照十进制数的运算规则,逢16进1。
10
1.3 计算机中数和字符的表示 数的补码表示 补码的加法和减法 无符号整数 字符表示法
11
数的补码表示 机器数与真值 原码表示法 反码表示法 补码表示法
12
数的补码表示 1.真值与机器数 计算机在处理实际问题时遇到的带符数,数据的“+”号和“-”号在计算机内也是用二进制位表示, “0”表示正, “1”表示负。 例如: N1= N2= 机内表示:N1= N2= 定义:将已经数值化了的带符号数称为机器数,而把原来的数称为机器数的真值。
13
数的补码表示 2.原码表示法 数据的最高位用来表示符号,称为符号位,符号位为0表示正数,符号位为1表示负数,其余位为数值位,用数据的绝对值表示。 举例:(1) X=+85, X原= (2) X=-85, X原= (3)对于零: 0有两种表示形式 +0原= 原=
14
数的补码表示 3.反码表示法 在反码表示中,仍用0表示正数,1表示负数。对于正数,其反码表示与其原码表示完全相同;对于负数,符号位为1,其余用数值的反码表示。 举例:(1) X=+85, X反= (2) X=-85, X反= (3)对于零: 0有两种表示形式 +0反= 反=
15
数的补码表示 4.补码表示法 在补码表示中,仍用0表示正数,1表示负数。对于正数,其补码表示与其原码表示完全相同;对于负数,符号位为1,其余各位按位取反加1。 举例:(1) X=+85, X补= (2) X=-85, X补= (3)对于零: 0只有一种表示形式 0补=
16
1.3.2 补码的加法和减法 求补运算 [X]补 => [-X]补 => [X]补 补码的加法法则
补码的加法和减法 求补运算 [X]补 => [-X]补 => [X]补 补码的加法法则 [X+Y]补=[X]补+[Y]补 补码的减法法则 [X-Y]补=[X]补+[-Y]补 求补 求补
17
1.3.2 补码的加法和减法 两个正数相加: 45 00101101(45的补码) + 22 +00010110(22的补码)
补码的加法和减法 两个正数相加: (45的补码) (22的补码) (67的补码)
18
1.3.2 补码的加法和减法 正数加负数(负数绝对值小): 45 00101101(45的补码)
补码的加法和减法 正数加负数(负数绝对值小): (45的补码) +(-22) (-22的补码) (23的补码)
19
1.3.2 补码的加法和减法 负数加正数(负数绝对值大): (-45) 11010011(-45的补码)
补码的加法和减法 负数加正数(负数绝对值大): (-45) (-45的补码) (22的补码) (-23的补码)
20
1.3.2 补码的加法和减法 两个负数相加: (-45) 11010011(-45的补码) (-22)+11101010(-22的补码)
补码的加法和减法 两个负数相加: (-45) (-45的补码) (-22) (-22的补码) (-67) (-67的补码)
21
1.3.2 补码的加法和减法 结论: 用补码表示的数据进行加减运算时可以不考虑符号位,直接运算,即与不带符号的数据的运算完全相同。
补码的加法和减法 结论: 用补码表示的数据进行加减运算时可以不考虑符号位,直接运算,即与不带符号的数据的运算完全相同。 该结论是否完全正确呢?请看下面的例子:
22
× 1.3.2 补码的加法和减法 两个正数相加: 126 01111110(126的补码) + 4 +00000100(4的补码)
补码的加法和减法 两个正数相加: (126的补码) (4的补码) (-126的补码) 为什么会出现错误的结果呢? ×
23
× 1.3.2 补码的加法和减法 两个正数相加: 126 01111110(126的补码) + 4 +00000100(4的补码)
补码的加法和减法 两个正数相加: (126的补码) (4的补码) (-126的补码) 为什么会出现错误的结果呢?溢出 ×
24
1.3.2 补码的加法和减法 运算结果超出了目标所能容纳的范围, 称发生了溢出。 例如:8位所能表示的补码数据的范围是:
补码的加法和减法 运算结果超出了目标所能容纳的范围, 称发生了溢出。 例如:8位所能表示的补码数据的范围是: -128~+127。 同号相加,异号相减时才可能发生溢出。
25
无符号整数 无符号数定义 一个数的最高有效位也作为数值处理,这样的数就称为无符号数。 用法:一般常用于表示地址
26
字符表示法 ASCII码 BCD码(8421码) Unicode码 区位码
27
1.4 几种基本的逻辑运算 1.4.1 与运算(AND) 1.4.2 或运算(OR) 1.4.3 异或运算(NOT)
1.4 几种基本的逻辑运算 1.4.1 与运算(AND) 1.4.2 或运算(OR) 1.4.3 异或运算(NOT) 1.4.4 非运算(XOR)
Similar presentations