计算机的基本原

上传人:tia****nde 文档编号:67926057 上传时间:2019-01-09 格式:PPT 页数:39 大小:544.50KB
返回 下载 相关 举报
计算机的基本原_第1页
第1页 / 共39页
计算机的基本原_第2页
第2页 / 共39页
计算机的基本原_第3页
第3页 / 共39页
计算机的基本原_第4页
第4页 / 共39页
计算机的基本原_第5页
第5页 / 共39页
点击查看更多>>
资源描述

《计算机的基本原》由会员分享,可在线阅读,更多相关《计算机的基本原(39页珍藏版)》请在金锄头文库上搜索。

1、第二章 计算机的基本原理(一),问题的提出: 计算机的发明必须具备哪些条件? 人是如何进行计算的? 要使机器能进行“自动计算”必须解决那些问题?,解决机器“自动计算”问题至少要解决 数据的表示数据表示模型 数据的存储数据存储模型 数据的运算计算模型 自动的执行冯 诺依曼原理,第二章 计算机的基本原理,学习目的和要求: 1.了解自动计算和图灵机原理 2.理解计算机中数字系统及其表示 3.熟悉计算机运算、存储和控制功能的逻辑实现 4.理解冯诺依曼原理与存储程序式计算机的基本结构 5.知道计算机指令系统 6.了解计算机软件系统,第二章 计算机的基本原理(一),计算模型与图灵机 计算模型:计算模型是刻

2、划计算这一概念的一种抽象的形式系统或数学系统 。 算法:算法是对计算过程步骤(状态)的一种刻划,是计算方法的一种可行实现方式。 凡是能用算法方法解决的问题,也一定能用这些计算模型解决;反之计算模型解决不了的问题,任何算法也解决不了。 计算模型之间在能力上是等价的 图灵机就是一个计算模型。它更接近普通人计算的思想方法,又因其好用而被现代计算机的研究开发者所采纳为计算机的计算模型。,图灵机 可形式化地描述为: 图灵机是一个五元组:K,s,H; K是一个有穷个状态的集合; 是字母表,即符号的集合:0,1,*; 是转移函数,即控制器的规则集合; sK,是初始状态; HK,是停机状态:,例1、设计一台可

3、以计算“x+1”的图灵机。(见P1719) 状态集合K:start, add ,carry, noncarry, overflow, return, halt 字母表:0,1,* 初始状态s:start 状态编码 停机状态H:halt 状态 编码 规则集合: start 0101 add 0110 字母表编码 cary 0111 符号 编码 noncary 1000 0 0000 overflow 1001 1 0001 run 1010 * 0010 halt 1011 读写头动作编码 动作 编码 Left 0011 Right 0100,表2.1 “x+1”的图灵机转换规则,从图灵机认识计

4、算机(自动计算机)的结构组成 必须告诉计算机要做什么输入子系统 如真的会自动计算应该把结果告诉人输出子系统 输入后应该有存放数据等的地方存储器问题 要实现自动计算应该有一个能按顺序执行的运算部件问题 数据如何表示 计算问题 第一推动力和持续推动力,CPU,从理论模型原理上来认识计算机为什么会“自动计算” 解决数据的表示计算机只认识“二进制”即0、1 数据的表示 有关进制及互相转换问题,十进制,二进制,八进制,十六进制,P进制 p0的整数,数的进制与各进制间的转换,数的进制:人们为了记数的方便和计算,创造了各种“权值”(即逢“几”进一)的记数方法,这些方法就称为数的进制。 十进制: 二进制: 八

5、进制: 十六进制: P进制:,p进制: N= an pn+an-1pn-1+a1p1+a0p0+a-1p-1+a-2p-2+a-mp-m 其中 p为正整数,ai 是0,1,2,(p-1)这p个数中的任一个,m、n是正整数。,十进制和二进制 十进制系统 十进制的表示方法 243210241013100 二进制系统 二进制的表示方法 (243)10127126125124023 022121120=(11110011)2,二进制数 当符号“0”和符号“1”分别表示数字0和数字1时,就可以构造逢二进一的二进制计数系统。 日常生活中采用的十进制计数是一种权计数法。所谓权,就是不同的位置代表不同的含义。

6、例如,十进制数345的含义如图2-1(a)所示。因十进制数345中数字3位置的权值为100,数字4位置的权值为10,数字5位置的权值为1,所以十进制数345可表示为3100+410+51。也可以用相似的方法表示二进制数,二进制数1001的含义如图2-1(b)所示。因二进制数1001中从左至右的权值分别为8、4、2、1,所以二进制数1001可表示为123+022+021+ 1 20 。,至此,我们知道,人类习惯于十进制数,而计算机内部存储只能采用二进制数,这就存在十进制数和二进制数之间的相互转换问题。因十进制数和二进制数只是数值的两种不同表示方法,并不表示其本质的改变。因此,十进制数和二进制数之

7、间必然可以相互转换。为区别十进制数和二进制数,在下面的讨论中,我们在数字后面用下标形式标出其进位制。如(101)10表示该数是十进制数,(101)2表示该数是二进制数。,各种进制数之间的 转换 二进制数向十进制数的转换 十进制数向二进制数的转换,1. 二进制数转换为十进制数 二进制数转换为十进制数的方法是:用十进制计数制把二进制数各位置的数按权展开后相加。 【例2-1】 求(1001.101)2的十进制数值。 解:(1001.101)2 123+022+021+120+1 2-1+02-2+12-3 = 8+1+0.5+0.125 = (9.625)10,2. 十进制整数转换为二进制整数 十进

8、制整数转换为二进制整数的方法是:首先不断地对前次得到的商除2并列出其余数,然后把所得余数按从后向前的次序排列。该方法简称除2取余法。 【例2-2】 求(19)10的二进制数值。 解: 2 19 1 (低位) 2 9 1 2 4 0 2 2 0 2 1 1 (高位) 0 (19)10=(10011)2,3. 将二进制数化为十进制数:,Binary 1 0 0 1 1 Weights 16 8 4 2 1 - 16 + 0 + 0 + 2 + 1 Decimal 19,例1:将二进制数10011化为十进制数.,0 1 2 4 8 17 35 Dec. Binary 1 0 0 0 1 1,例2:将

9、十进制数35化为二进制数.,表2-1 十进制整数和二进制整数转换表,4. 十进制小数转换为二进制小数 十进制小数转换为二进制小数的方法是:首先不断地对前次得到的积的小数部分乘2,并列出该次得到的整数数值,然后按从前向后的次序排列。该方法简称乘2取整法。 【例2-3】 求(0.6875)10的二进制数值。,解: 0.6875 整数 2 1.3750 1 (高位) 0.3750 2 0.7500 0 2 1.5000 1 0.5000 2 1.0000 1 (低位) 因此,(0.6875)10 = (0.1011)2,在十进制小数转换为二进制小数过程中,有时会出现乘积的小数部分总不等于0的情况,如

10、(0.4435)10就不能在10步内使乘积的小数部分等于0;甚至还会出现循环小数的情况,如(0.6)10 = (0.100110011001)2。在上述两种情况下,乘2过程的结束由所要求的转换精度确定。,要说明的是,十进制整数转换为二进制整数后,该二进制整数要比相应的十进制整数位数长很多,但十进制小数转换为二进制小数后,该二进制小数却并不比相应的十进制小数位数长。这是因为小数是分数的比值的结果,无论是十进制小数还是二进制小数,其小数数值都只是自身分数的比值的结果。例如, (0.5)10 = (5/10)10 = (1/2)10 = (1/10)2 = (0.1)2,“二 八”: (1) 二进制

11、八进制:以小数点为基准,分别向左、右进行“三位并一位”,不足补零。 例3:转换为十进制表示 解:(11101.110100)2 3 5 . 6 4 (2)八进制二进制: 以小数点为基准,分别向左、右进行“一位拉三位”。 例4:转换为二进制表示 解: 4 5 . 6 1 100 101 . 110 001 45.61= 100 101 . 110 001,二 十六: (1) 二十六:以小数点为基准,分别向左、右进行“四位并一位”,不足补零。 例5: 转换为十六进制表示 解:1100 1101.0101 1000 C D . 5 8 (11001101.01011)2 =CD.58 (2) 十六二

12、:以小数点为基准,分别向左、右进行“一位拉四位”。 例6:转换为二进制表示 解:A C 8 . 5 3 1010 1100 1000. 0101 0011 AC8.53=(101011001000.01010011)2,二进制的运算 (1)、 二进制的加法 二进制的加法与十进制的加法是相似的,不同之处是各位相加结果“逢二进一”。例如: 例1:求10110B+11110B 1 0 1 1 0 +)、1、1、1、1 0 1 1 0 1 0 0 (2)、 二进制的减法 二进制减法的作法和其加法相似,记住在减法中是“借一当二”。不过在计算机中不是这样做,这种“借”在机器上实现起来很麻烦。我们后面会介绍

13、,计算机真正是如何计算的,事实上它只会做“加法”。 例2:求 1 1 0 1 0 -) 0 1 0 0 1 1 0 0 0 1,(3)、 二进制的乘法: 二进制的乘法通常与十进制乘法一样,因为只有0、1所以计算很简单。 例3:求1 1 1 0 1 0 0 1 1 1 1 0 ) 1 0 0 1 1 1 1 0 1 1 1 0 或 ) 1 0 0 1 0 0 0 0 1 1 1 0 0 0 0 0 +) 1 1 1 0 +) 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 0,(4)、二进制的除法 二进制除法与十进制除法类似,由二进制减法、上商等操作,逐步完成。 例4 求 1

14、 1 010 0 11 0 1 1 0 1 0 1 101 )1 1 0 1 0 0 1 1 0 1 1 1 0 1 0 1 1 0 1 1 0 1 0 不过计算机可不是这样完成的。,二进制与逻辑运算: 1、位二进制运算: 加法:0+0=0 0+1=1+0=1 1+1=10(逢二进一) 减法:0-0=0=1-1 1-0=1 0-1=1(借一当二) 乘法:00=0 01=10=0 11=1 除法:01=0 11=1,逻辑运算: 逻辑中最基本的运算是:非、与、或、异或。 集合运算符:(NOT(A ) 、(、)、(、+)、 非:当A=0时 NOTA=1 当A=1时 NOTA=0 与:当A=0,B=0时 AB=0 当A=0,B=1时 AB=

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号