通用电子数字计算机的工作原理

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
“电子”,计算机硬件实现的物理基础
计算机执行的计算
通过电子电路中的电流、电位等实现
数字设备
数字 对 模拟
“数字”是现代计算机的一种基本特征, 也是计算机通用性的一个重要基础
在现代计算机里,所有信息都是采用 数字化的形式表示
整数、小数、文字、图像、声音等
计算机
核心处理部件:CPU(Central Processing Unit,中央处理器)
1000 1001 1010 1011 1100 1101 1110 1111
十进制 0 1 2 3 4 5 6 7
-8 -7 -6 -5 -4 -3 -2 -1
算术逻辑单元
算术逻辑单元(Arithmetic and Logic Unit, ALU)
两个输入和一个输出 不知道所加的两个位组合表示什么 采用与十进制加法相同的规则
-7 -6 -5 -4 -3 -2 -1
1000 ?
在对每个数值加0001后, 应得到正确的结果
1000:-8 1000(?)
+ 0001(1) = 1001(-7)
二进制表示 0000 0001 0010 0011 0100 0101 0110 0111
1000 1001 1010 1011 1100 1101 1110 1111
整数数据类型
无符号整数
任务执行的次数 课程的选课人数 ……
位置计数法——十进制
十进制系统
286
2——200,2102 8——8101
位置计数法,或定位数制 10,数制中的基数或基
位置计数法——二进制无符号整数
基数为2,二进制数为0和1
使用8位,十进制数字30
00011110 027+026+025+124+123+122+121+020
在等式两端同时除以2
61= a625+ a524+ a423+ a322+ a221+ a120
奇数,a1:1
在等式两端同时减去1
60= a625+ a524+ a423+ a322+ a221
在等式两端同时除以2
30= a624+ a523+ a422+ a321+ a220
a2=0
15= a623+ a522+ a421+ a320
控制器
控制单元可以是多个控制器,分别从属于各个 部件
ALU控制器,控制ALU执行何种运算 I/O控制器,控制输入和输出 ……
输入/输出设备
外围设备(peripherals)
键盘——输入;监视器(显示器)——输出 输入:鼠标,数字扫描仪、磁盘 输出:打印机,磁盘
比特和数据类型
现代计算机
位置计数法
k位
0 2k-1-1 最高位为0
k=4的正数
最大的正数:7
以0开头
二进制表示
0000 0001 0010 0011 0100 0101 0110 0111
十进制 0 1 2 3 4 5 6 7
负数——原码
k=4,-1 -7?
最高位0:正数(+) 最高位1:对应的负数(-)
访问存储器的时间远长于执行加法或乘法的时间 使用临时存储空间存储A+B的结果
控制单元
指挥信息的处理 具体工作:
在执行程序的过程中,跟踪存储器中的指令 在处理指令的过程中,跟踪指令的处理阶段
PC
跟踪要处理的下一条指令
容纳下一条指令所在地址的寄存器——“程序计 数器”(Program Counter,简称PC)/ “指令 指针”
示例
将二进制补码整数11110010转换为十进制数值 1. 检查最前面一位
1,负数,先“取反加1”
00001110 2. 计算
123+122+121 = 14 3. 原数值是负数,加负号前缀“-14”
十进制-二进制
如果一个正的二进制数的最右端的数字为1, 这个数为奇数;否则为偶数
8位二进制数(正数)
光盘
凹(聚光)和凸(散光)
接近0和远离0
接近0的电压和远离0的电压
3.3伏的电压为1,0伏的电压为0 2.9伏的电压:1,0.2伏的电压:0
二进制 对 十进制
如果采用十进制,需要测量电压的具体值
复杂 电路的电压值必须稳定
识别多个数值
不仅仅是0和1 对多个位进行组合
位组合
8位(8根线路上的电压)
a3=1
7= a622+ a521+ a420
a4=1
3= a621+ a520
a5=1
1= a620
a6=1
二进制表示为 0111 1011
除2取余
2
123
2
61
2 30
2 15
27
23
21
0
将余数从高位向低位依次排列
1111011 正数,最高位为0 二进制表示为 0111 1011
1000 1001 1010 1011 1100 1101 1110 1111
十进制 0 1 2 3 4 5 6 7
-8 -7 -6 -5 -4 -3 -2 -1
K位组合
-2k-1 2k-1-1
0后面跟k-1个1:2k-1-1 1后面跟k-1个0:-2k-1 k个1:-1
-A的表示
A
+
二进制-十进制
一个8位的二进制补码数采取如下格式:
a7 a6 a5 a4 a3 a2 a1 a0 1. 检查最前面的a7
0,正数,直接计算 1,负数,先“取反加1”
2. 计算
a626+ a525+ a424+ a323+ a222+ a121+ a020
3. 如果原数值是负数,加一个负号前缀
数据类型
同一个数值,多种表示方法
整数6
十进制计数法,“6” 一元计数法,“正一” 罗马字符,vi 二进制计数法,“0110”
某种表示法,编码,运算
数据类型
计算机中的数据类型
二进制补码整数
算术运算的正负整数
ASCII码
从键盘输入计算机,显示在显示器上的字符
浮点数
类似于十进制“科学计数法”
二进制表示 0000 0001 0010 0011 0100 0101 0110 0111
1000 1001 1010 1011 1100 1101 1110 1111
十进制 0 1 2 3 4 5 6 7
-7 -6 -5 -4 -3 -2 -1 -0
计算4+(-3)
采用与十进制加法相同的规则 原码表示法
余数 1 1 0 1 1 1 1
低位 高位
总结
十进制数N,k位补码表示
1. 将N的绝对值“除2取余”,得到其绝对值的
二进制表示; 2. 如果原来的十进制数为正,在二进制数前加0,
得到结果; 3. 如果原来的十进制数为负,在二进制数前加
0 ,再“取反加1”,得到结果。
指令和程序
指令(instruction)
处理器完成的最小工作单位 计算机执行的一件明确定义的工作
计算机程序(program)
由一组指令组成 指令是计算机程序中规定的可执行的最小
的工作单位
存储程序控制原理
卡片 对 Biblioteka Baidu储器 现代计算机的构建思想
冯·诺依曼 程序存储在存储器里 CPU负责
信息:数字化 计算:电子电路
位/比特
计算机,电子元件
控制电子流动 对电压的有无做出反应
存在电压:“1” 不存在电压:“0”
“0”和“1”,比特(bit)或位
“二进制位”(binary digit)的缩写
两种稳定状态
自然界的事物通常具有两种稳定的状态
存储信息的磁盘
磁化和未磁化
01001110,11100111…… 256(即28)个不同的值
k位,2k个不同的值
每一种组合是一个编码,对应某个特定的值
位运算
对表示出来的信息进行运算
1679年,德国数学家莱布尼茨,二进制表示及算 术运算
1854年,英国数学家乔治·布尔,二进制的逻辑 运算,布尔代数
现代计算机工作的数学基础
0100(4) + 1011(-3) = 1111(-7) 反码表示法
0100(4) + 1100(-3) = (1)0000(0)
负数——补码
k=4
0 +7
位置记数法
-8 -1
尽可能使逻辑电路最简单
二进制表示 0000 0001 0010 0011 0100 0101 0110 0111
A的反码
=
11…11(-1)
+
00…01(1)
=
00…00(0)
-A的表示
把A的反码加1 “取反加1”
示例
-6的二进制补码表示是什么(采用4位表示)?
1. A:+6, 0110
2. A的反码 1001
3.
1001
+ 0001
= 1010(-6)
验证
0110(6)
+ 1010(-6)
= (1)0000
十进制 0 1 2 3 4 5 6 7
-8 -7 -6 -5 -4 -3 -2 -1
1111、0000、0111、1000
1111和0000:-1和0 1111(-1)
+ 0001(1) = (1)0000(0) 在做补码算术运算时
这个进位总是被忽略
0111:+7 1000:-8
二进制表示 0000 0001 0010 0011 0100 0101 0110 0111
o 指挥信息的处理 o 执行信息的实际处理
微处理器
采用半导体集成电路技术制造 指甲般大小的硅片上集成了数以亿计的
晶体管
计算机系统
硬件(hardware)和软件(software)
硬件:处理器、存储器和外部设备等 软件:程序和文档
冯·诺依曼(Von Neumann)模型
冯·诺依曼模型
a626+ a525+ a424+ a323+ a222+ a121+ a020
如何找到ai(i= 0,1,…6)的值?
示例:+123
正数,最高位a7:0
123 = a626+ a525+ a424+ a323+ a222+ a121+ a020
奇数,a0:1
在等式两端同时减去1
122 = a626+ a525+ a424+ a323+ a222+ a121
A + (-A) = 0
0101(+5)
+
?(-5)
= 0000(0)
0101(+5) + 1011(-5) = 0000(0)
二进制表示 0000 0001 0010 0011 0100 0101 0110 0111
1000 1001 1010 1011 1100 1101 1110 1111
十进制 0 1 2 3 4 5 6 7
通用电子数字计算机
通用电子数字计算机
General-Purpose Electronic Digital Computer
1946年,美国宾夕法尼亚大学, ENIAC(电子数字积分器和计算器, Electronic Numerical Integrator and Calculator)
通用计算设备
二进制表示 0000 0001 0010 0011 0100 0101 0110 0111
1000 1001 1010 1011 1100 1101 1110 1111
十进制 0 1 2 3 4 5 6 7
-0 -1 -2 -3 -4 -5 -6 -7
负数——反码
k=4,-1 -7?
对正数“按位取反”
• 存储器
• 程序 • 数据
• 处理单元
• 执行指令
• 控制单元
• 指令执行的顺序
• 输入设备
• 将程序和数据送 入计算机中
• 输出设备
• 将执行结果送出 计算机外
存储器
输入设备
*键盘 *鼠标 *扫描仪 *磁盘
CPU
处理单元
ALU Reg
控制单元
PC
输出设备
*显示器 *打印机 *磁盘
存储器
能够存储信息的二维阵列 每一行,存储单元(Memory Location)
通用 对 专用
计算机是一种通用计算设备
阿兰·图灵,1936年 “论可计算数及其在判定问题中的应
用”
通用计算设备思想
所有的计算机,如果给予足够的时间和足够 的存储器,都可以做相同的计算
如果想做一种新的计算,不需要重新设计一 台新计算机,只需安装合适的软件
通用
=
电子设备
电子 对 机械
二进制无符号整数
k位数
0 2k-1,2k个整数
K = 8
0 255,256个整数
有符号整数
k位,2k个不同的数字,一半表示正数,一半
表示负数
K = 4
+1 +7 -1 -7 剩下2个
一个:0 -7 +7
另一个:?
14个
如何分配?
+1 +7

-1 -7

正数
可使用一个唯一的标识符进行识别,地址 包含一定大小的内容
指令 数据
处理单元
包含许多复杂的功能单元 最简单的单元ALU(Arithmetic and Logic
Unit,算术和逻辑单元)
寄存器堆/文件
ALU附近,临时存取数据
例如,计算(A+B)×C,先在存储器中存储A+B的 结果,随后读取出来,再和C相乘
相关文档
最新文档