微机原理几个重要的基础知识
2006-05-23 18:09
363 查看
1.机器数和真值
计算机中只能表示0和1两种数码,为了表示正数和负数,需要专门选择一位符号位来表示数的符号,一般选择最高位,符号位为0的时候表示正数,符号位为1的时候表示负数,也就是说数的符号在计算机中数码化了。
我们把一个数在计算机中的表示形式称为机器数,原来实际数的本身的值叫做真值.
机器数的特点:
(1).机器数的正负号数值化;
(2).机器数表示的范围的大小受到机器字长的限制。
位(Bit)的概念: 计算机所能表示的最小数据单位,只有0和1两种状态,表示更大的数就要把更多的位组合起来作为一个整体,每增加一位,所能表示的数就增大一倍.
字节(Byte)的概念:一个字节为8位二进制数,是计算机处理数据的基本单位,微机的存储器是由一个一个存储单元构成的,每个存储单元就是一个字节,因此存储器是以字节为单位编址的,存储容量的大小也是也字节数来度量的。
字(Word)的概念: 计算机处理数据时,CPU通过数据总线一次存取,加工或传送的数据。通常由一个字节或者多个字节构成.
字长(Word Length)的概念: 字的二进制的位数.字长是计算机一次所能处理的实际位数的长度,所以字长是衡量计算机性能的一个重要标志。通常说的计算机是多少多少位的位就是指的字长.
(3).小数点不能直接标出,需要按一定方式约定小数点的位置.
2.符号数的表示方法:
为了解决带符号的机器数在机器中运算时的问题,引出了机器数x的三种不同的编码形式。
设x=x(1) x(2) x(3) ... x(n-1) ,其中x(i)为一位二进制数,i=1,2,...,(n-1),
(1).原码
若x>=0 时, [ x ]原=0 x(1) x(2) ....x(n-1);
若x<=0时, [ x ]原=1 x(1) x(2) ....x(n-1);
根据定义,有
[+0]原=0 0 0 0 0..
[-0 ]原=1 0 0 0 0...
优点:表示简单,与真值转换方便;
缺点:运算时需要判断符号,增加机器的运算时间;
(2)反码
若x>=0 时, [ x ]反=0 x(1) x(2) ....x(n-1);
若x<=0时, [ x ]反=1 x(1) x(2) ....x(n-1);
根据定义,有
[+0]反=0 0 0 0 0..
[-0 ]反=1 111111..
(3).补码
若x>=0 时, [ x ]补=0 x(1) x(2) ....x(n-1);
若x<=0时, [ x ]补=[ x ]反+1;
根据定义,有
[+0]补=0 0 0 0 0..
[-0 ]补=00 0 0 0...
优点:补码便于计算机运算;
3.补码的运算
(1).若x为负数,则[ [x]补 ]补=[ x ]原
(2).
=
+
该式的语言表达是两个N位二进制数之和的补码 等于两数补码之和。
当带符号两数采用补码形式表示时,进行加法运算可以把符号位和数值位一起进行运算(若符号位有进位,则丢掉),结果为两数之和的补码形式。
(3).
=
+
该式表明,求
可以用
与
相加来实现。
这里的
,即对减数进行求负操作,也就是对补码表示的数(无论是正数还是负数)求得其相应的用补码表示的负数(如果原来是正数,求负后得负数,原来是负数,求负后得正数)。一般称已知
求得
的过程叫变补或求负。两个带符号数采用补码表示时,减法运算可以通过“变补相 加法”来实现,即
-
=
+
注:[ -y ]补的求法: 对[ y ]补 "连同符号位在内一起变反加1";
4.补码运算中的溢出的解决方法
(1).使用双符号位.
(2).使用进位
5.定点数和浮点数
(1).定点数就是小数点的位置在数中固定不变.
两种表示方法:定点纯小数和定点纯整数;
(2).浮点表示法;
N=2p S
其中N表示浮点数或者实数,
S表示N的尾数,用带符号的定点小数表示,一般用原码表示;尾数长短规定了数字的有效位数(精度)
2表示N的底数,
p表示指数,称为阶码,用带符号的整数,一般用补码表示;阶码的大小规定了数的范围;
浮点数的表示形式
阶符 阶码 尾符 尾数;
阶符表示阶码的符号位,0表示为正,1表示为负;
尾符表示位数的符号位,0表示为正,1表示为负;
规格化的浮点数: 满足 0.5<= S <1 的限制;
(3) IEEE的浮点数表示方法
6.BCD码
BCD码:
BCD(Binary Coded Decimal)是用二进制编码表示的十进制数(见表3.3),十进制数采用0~9十个数字,是人们最常用的。在计算机中,同一个数可以用两种BCD格式来表示:①压缩的BCD码 ②非压缩的BCD码
压缩的BCD码:
压缩的BCD码用4位二进制数表示一个十进制数位,整个十进制数用一串BCD码来表示。例如,十进制数59表示成压缩的BCD码为0101 1001,十进制数1946表示成压缩的BCD码为0001 1001 0100 0110。
非压缩的BCD码:
非压缩的BCD码用8位二进制数表示一个十进制数位,其中低4位是BCD码,高4位是0。例如,十进制数78表示成压缩的BCD码为0000 0111 0000 1000。
从键盘输入数据时,计算机接收的是ASCII码,要将ASCII码表示的数转换成BCD码是很简单的,只要把ASCII码的高4位清零即可。
计算机中只能表示0和1两种数码,为了表示正数和负数,需要专门选择一位符号位来表示数的符号,一般选择最高位,符号位为0的时候表示正数,符号位为1的时候表示负数,也就是说数的符号在计算机中数码化了。
我们把一个数在计算机中的表示形式称为机器数,原来实际数的本身的值叫做真值.
机器数的特点:
(1).机器数的正负号数值化;
(2).机器数表示的范围的大小受到机器字长的限制。
位(Bit)的概念: 计算机所能表示的最小数据单位,只有0和1两种状态,表示更大的数就要把更多的位组合起来作为一个整体,每增加一位,所能表示的数就增大一倍.
字节(Byte)的概念:一个字节为8位二进制数,是计算机处理数据的基本单位,微机的存储器是由一个一个存储单元构成的,每个存储单元就是一个字节,因此存储器是以字节为单位编址的,存储容量的大小也是也字节数来度量的。
字(Word)的概念: 计算机处理数据时,CPU通过数据总线一次存取,加工或传送的数据。通常由一个字节或者多个字节构成.
字长(Word Length)的概念: 字的二进制的位数.字长是计算机一次所能处理的实际位数的长度,所以字长是衡量计算机性能的一个重要标志。通常说的计算机是多少多少位的位就是指的字长.
(3).小数点不能直接标出,需要按一定方式约定小数点的位置.
2.符号数的表示方法:
为了解决带符号的机器数在机器中运算时的问题,引出了机器数x的三种不同的编码形式。
设x=x(1) x(2) x(3) ... x(n-1) ,其中x(i)为一位二进制数,i=1,2,...,(n-1),
(1).原码
若x>=0 时, [ x ]原=0 x(1) x(2) ....x(n-1);
若x<=0时, [ x ]原=1 x(1) x(2) ....x(n-1);
根据定义,有
[+0]原=0 0 0 0 0..
[-0 ]原=1 0 0 0 0...
优点:表示简单,与真值转换方便;
缺点:运算时需要判断符号,增加机器的运算时间;
(2)反码
若x>=0 时, [ x ]反=0 x(1) x(2) ....x(n-1);
若x<=0时, [ x ]反=1 x(1) x(2) ....x(n-1);
根据定义,有
[+0]反=0 0 0 0 0..
[-0 ]反=1 111111..
(3).补码
若x>=0 时, [ x ]补=0 x(1) x(2) ....x(n-1);
若x<=0时, [ x ]补=[ x ]反+1;
根据定义,有
[+0]补=0 0 0 0 0..
[-0 ]补=00 0 0 0...
优点:补码便于计算机运算;
3.补码的运算
(1).若x为负数,则[ [x]补 ]补=[ x ]原
(2).
=
+
该式的语言表达是两个N位二进制数之和的补码 等于两数补码之和。
当带符号两数采用补码形式表示时,进行加法运算可以把符号位和数值位一起进行运算(若符号位有进位,则丢掉),结果为两数之和的补码形式。
(3).
=
+
该式表明,求
可以用
与
相加来实现。
这里的
,即对减数进行求负操作,也就是对补码表示的数(无论是正数还是负数)求得其相应的用补码表示的负数(如果原来是正数,求负后得负数,原来是负数,求负后得正数)。一般称已知
求得
的过程叫变补或求负。两个带符号数采用补码表示时,减法运算可以通过“变补相 加法”来实现,即
-
=
+
注:[ -y ]补的求法: 对[ y ]补 "连同符号位在内一起变反加1";
4.补码运算中的溢出的解决方法
(1).使用双符号位.
(2).使用进位
5.定点数和浮点数
(1).定点数就是小数点的位置在数中固定不变.
两种表示方法:定点纯小数和定点纯整数;
(2).浮点表示法;
N=2p S
其中N表示浮点数或者实数,
S表示N的尾数,用带符号的定点小数表示,一般用原码表示;尾数长短规定了数字的有效位数(精度)
2表示N的底数,
p表示指数,称为阶码,用带符号的整数,一般用补码表示;阶码的大小规定了数的范围;
浮点数的表示形式
阶符 阶码 尾符 尾数;
阶符表示阶码的符号位,0表示为正,1表示为负;
尾符表示位数的符号位,0表示为正,1表示为负;
规格化的浮点数: 满足 0.5<= S <1 的限制;
(3) IEEE的浮点数表示方法
6.BCD码
BCD码:
BCD(Binary Coded Decimal)是用二进制编码表示的十进制数(见表3.3),十进制数采用0~9十个数字,是人们最常用的。在计算机中,同一个数可以用两种BCD格式来表示:①压缩的BCD码 ②非压缩的BCD码
压缩的BCD码:
压缩的BCD码用4位二进制数表示一个十进制数位,整个十进制数用一串BCD码来表示。例如,十进制数59表示成压缩的BCD码为0101 1001,十进制数1946表示成压缩的BCD码为0001 1001 0100 0110。
非压缩的BCD码:
非压缩的BCD码用8位二进制数表示一个十进制数位,其中低4位是BCD码,高4位是0。例如,十进制数78表示成压缩的BCD码为0000 0111 0000 1000。
从键盘输入数据时,计算机接收的是ASCII码,要将ASCII码表示的数转换成BCD码是很简单的,只要把ASCII码的高4位清零即可。
相关文章推荐
- 几个十分重要的计算机编程基础知识
- 多线程中几个重要的专业术语及基础知识
- java基础知识要点总结之几个重要关键字(关于static、this、final、)
- JAVA面试中的几个重要基础问题
- linux进程、线程常用的几个基础知识点
- Javascript重要基础知识点(二)
- Zigbee之旅(八):几个重要的CC2430基础实验——看门狗(转)
- 几个linux各发行版本的问答(Linux基础知识扫盲)
- 关于UIView.subView几个基础知识点
- linux运维重要基础知识总结
- 黑马程序员_JavaSE基础知识总结二十:课堂上关于集合的几个超经典案例(结课前集合知识温故)
- 最近遇到的几个小问题,自己的基础知识太差劲了。
- (LINQ 学习系列)(3)学习Linq的几个基础知识
- Unity 重要基础知识点
- Zigbee之旅(三):几个重要的CC2430基础实验——外部中断
- 邹晓辉围绕“语言、信息、知识和智慧”几个重要概念展开的长期研究 及其新近成果乃至国内外推广普及的尝试进展
- 【PHP】找几个例子就能快速复习PHP基础知识
- Zigbee之旅(三):几个重要的CC2430基础实验——外部中断(转)
- 重要的网络基础知识之OSI和TCP/IP协议
- String基础知识,构造函数和一些重要方法,StringBufffer的构造函数和一些重要方法