《第五讲-CPU内存基本工作原理课件.ppt》由会员分享,可在线阅读,更多相关《第五讲-CPU内存基本工作原理课件.ppt(69页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第五讲:第六章CPU/内存基本工作原理北京大学 信息科学技术学院2013年10月予坊疥逻澡羞肄哎扭跑彰厚张础怂沂轨内岩建瓶谨虫吹术叮恐难目均仕资第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理本讲内容n计算机的数学理论模型图灵机nCPU的内部结构和工作原理n主存储器及其与CPU之间的信息传输n指令系统n计算机程序的基本控制结构悦困灯浮送驰崩尾乎娟活边箕囱肚廓津颁讥哺睡谨悯掳瓢疏吵定肩席会鸦第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理计算机的数学理论模型图灵机昌槐讥叶血钞矛杜涅帧娃爱锁乐忽帧讥已燃蜒皇政矗浅桥陕皖徘篆门山主第五讲-CPU内存基本工作原理第五讲-CPU内
2、存基本工作原理可计算性对于一个问题,如果存在一个机械的过程,当我们给定一个输入,这个过程能够在有限步内终止并给出正确答案,那么,这个问题就称为是可计算的/具有可计算性。定惺哼蔚呈探獭编酱罪回盒乃磐兴引谩眩府征惹杭捶他错鄙姬烧芯侦醇垒第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理计算机理论的发展历史n图灵 研究了 可计算性n提出了 图灵机 和 图灵机能解决的问题类n证明了 存在着图灵机无法解决的问题类n冯诺伊曼 给出了 现代计算机的设计蓝图n提出了 数字计算机的组成原理和体系结构n对指令、指令周期、指令系统和存储式程序控制原理都给出了明确的方案n库克(Stephen A.Cook)
3、研究了 计算复杂性n有一些问题,虽然可计算,但随着问题规模的增加,就连最快的计算机用几百年也不能结束计算棋袖二鲁害候近篮沃尽朗是竞铬腑峡佰兔傈犀金豆嘘桂赞闭掌宫睬觉现篆第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理图灵机(Turing Machine)n1936年由 英国数学家 阿兰图灵 提出n一种抽象的计算模型n现代电子计算机的理论基础n基本思想:用 机器 来 模拟 人类 用 纸和笔 进行 数学运算的过程n人用纸和笔进行数学运算的两种简单动作:n在纸上写下或擦除某个符号n把注意力从纸的一个位置移动到另一个位置n同时,人的下一步动作依赖于两个因素:n此人当前所关注的纸上某个位置的
4、符号n此人当前的思维状态壶忆梗译胃收磺侵泵滓撤口抠肌弱疥尧罪昭若蟹厢袜艳须胰侨玻欧杰恬敷第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理图灵机的构成成分(1)n1.一条无限长的纸带 TAPEn纸带被划分为一个接一个的小方格n每个方格存储一个来自一个有限符号集合的符号n纸带的两端可以无限延伸图灵机的图灵机的符号表符号表bcdefguvwxy TAPETAPE泽撕冷梢为勿落愉屋讽宾杆蛀结符耳馋务子供犊饰蚀祈沮缨誓瑶史妓窥诫第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理图灵机的构成成分(2)n2.一个读写头 HEADn能 读出当前位置的方格里的符号n能 在当前位置的方格里写
5、入一个符号n能 向左、向右移动n一次移动一个方格的宽度bcdefguvwxy HEADHEAD向左移动向右移动侦险闸筒廓输哄湘酪贾畅秽抽锋弘檀醉篷馈伊俞收酞旺轮别辱恬墨帽选遮第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理图灵机的构成成分(3)n3.一个控制器 CONTROLn一个状态寄存器 REGn记录了图灵机的当前状态n一个图灵机具有 有限数量的可能状态n一个控制规则表 TABLEn规定了图灵机如何在不同的状态之间进行迁移/转换bcdefguvwxy CONTROL有限状态控制器渴团拂计数似厘贮狈横悟嵌夺骄你捏桅坊韭斡馆份步陵堆蒂头已倚瓜恰愈第五讲-CPU内存基本工作原理第五讲
6、-CPU内存基本工作原理图灵机的运作方式n图灵机的每一步动作取决于四个因素n控制器中的当前状态 qin读写头的当前位置(在哪个方格上)n当前位置的方格内存储的符号 sin控制规则表中的规则控制器 根据 qi、si、以及控制规则,决定:1.向当前方格内写入的符号2.读写头的移动方向(左移,右移,不动)3.控制器新的当前状态(START,HALT)停机状态启始状态马陕培青骆莲戍恶赫盯砌堆高莉垂址胃陡狮雇蕴叠湘仰灸梗羊空虱刁烘拼第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理控制规则表的结构当前状态当前方格中的符号写入方格的符号读写头移动方向新的当前状态STARTqisisi+1左移qi
7、+1HALT每一行存储了一条控制规则铣救析繁坚唱习掏蜒溺傍栗亿且章副憎纲咳凳乏摊渭闲类叉疙佛咸瓢洁蝴第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理图灵机实例1 CONTROL当前状态STARTn符号表:0,1,*n状态集合:n START/开始,ADD/相加,CARRY/进位,OVERFLOW/溢出,RETURN/返回,HALT/停机*101*请同学们观察这个图灵机的功能是什么瞒夫宅城咖汽垢抵穴锤嘉蜘兔续尹葱戌笋出苹禽警苟仍浸礁拧漱知底蒋魄第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理 CONTROL当前状态START*101*ID当前状态当前符号写入符号移动方向新
8、的状态01START*左移ADD02ADD01右移RETURN03ADD10左移CARRY04ADD*右移HALT05CARRY01右移RETURN06CARRY10左移CARRY07CARRY*1左移OVERFLOW08OVERFLOW*右移RETURN09RETURN00右移RETURN10RETURN11右移RETURN11RETURN*不动HALT控制规则表乍段坪明酿蔬措已喂邱沈朱翅誉宵稚锄副铂枝钠外峻野冠效柒唯戳眶课涤第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理 CONTROL当前状态ADD*101*ID当前状态当前符号写入符号移动方向新的状态01START*左移AD
9、D02ADD01右移RETURN03ADD10左移CARRY04ADD*右移HALT05CARRY01右移RETURN06CARRY10左移CARRY07CARRY*1左移OVERFLOW08OVERFLOW*右移RETURN09RETURN00右移RETURN10RETURN11右移RETURN11RETURN*不动HALT控制规则表拥票轻淋挥礁倒联袖伟扼移翻插桐胜撼挟棱钦烦希窖振约策忘竣奖咨茹猿第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理 CONTROL当前状态ADD*100*ID当前状态当前符号写入符号移动方向新的状态01START*左移ADD02ADD01右移RETUR
10、N03ADD10左移CARRY04ADD*右移HALT05CARRY01右移RETURN06CARRY10左移CARRY07CARRY*1左移OVERFLOW08OVERFLOW*右移RETURN09RETURN00右移RETURN10RETURN11右移RETURN11RETURN*不动HALT控制规则表揖佐两爽党做仇贬返猩啊技徐细汰仗回钉拧蕾腮庞灼韵导浩犹恶搬递纳俊第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理 CONTROL当前状态CARRY*100*ID当前状态当前符号写入符号移动方向新的状态01START*左移ADD02ADD01右移RETURN03ADD10左移CAR
11、RY04ADD*右移HALT05CARRY01右移RETURN06CARRY10左移CARRY07CARRY*1左移OVERFLOW08OVERFLOW*右移RETURN09RETURN00右移RETURN10RETURN11右移RETURN11RETURN*不动HALT控制规则表挂市刷侗卸效麻寂咏瓷矣穷澜别予巢庞凰吻蝎胆沁湿慷炬未键点诊衬准互第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理 CONTROL当前状态CARRY*110*ID当前状态当前符号写入符号移动方向新的状态01START*左移ADD02ADD01右移RETURN03ADD10左移CARRY04ADD*右移HAL
12、T05CARRY01右移RETURN06CARRY10左移CARRY07CARRY*1左移OVERFLOW08OVERFLOW*右移RETURN09RETURN00右移RETURN10RETURN11右移RETURN11RETURN*不动HALT控制规则表帝镍民商摸魂睁肪噪卯尊易雷镊绞碉显牛翘托唇途肆危书虏询卜矽碰姐丹第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理 CONTROL当前状态RETURN*110*ID当前状态当前符号写入符号移动方向新的状态01START*左移ADD02ADD01右移RETURN03ADD10左移CARRY04ADD*右移HALT05CARRY01右移
13、RETURN06CARRY10左移CARRY07CARRY*1左移OVERFLOW08OVERFLOW*右移RETURN09RETURN00右移RETURN10RETURN11右移RETURN11RETURN*不动HALT控制规则表宜啄刊褪秉贬墩鹰形赫柱败眉很震镀夺炼韭尚保雕茨吵蔽绸伦谗旅冤荧拇第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理 CONTROL当前状态RETURN*110*ID当前状态当前符号写入符号移动方向新的状态01START*左移ADD02ADD01右移RETURN03ADD10左移CARRY04ADD*右移HALT05CARRY01右移RETURN06CARR
14、Y10左移CARRY07CARRY*1左移OVERFLOW08OVERFLOW*右移RETURN09RETURN00右移RETURN10RETURN11右移RETURN11RETURN*不动HALT控制规则表休磐脆烫宴批挟墨抚撬谓兆纫锡琳洒涅蔽掩趁馅般铂唇异翼魔列塌炎凿被第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理 CONTROL当前状态RETURN*110*ID当前状态当前符号写入符号移动方向新的状态01START*左移ADD02ADD01右移RETURN03ADD10左移CARRY04ADD*右移HALT05CARRY01右移RETURN06CARRY10左移CARRY07
15、CARRY*1左移OVERFLOW08OVERFLOW*右移RETURN09RETURN00右移RETURN10RETURN11右移RETURN11RETURN*不动HALT控制规则表蒂榴常嘿值十环男捞窜遂渴糜硝窝娄擎扑斯革藕丫考固亮飞瞧强羹菊姑烟第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理 CONTROL当前状态HALT*110*ID当前状态当前符号写入符号移动方向新的状态01START*左移ADD02ADD01右移RETURN03ADD10左移CARRY04ADD*右移HALT05CARRY01右移RETURN06CARRY10左移CARRY07CARRY*1左移OVERF
16、LOW08OVERFLOW*右移RETURN09RETURN00右移RETURN10RETURN11右移RETURN11RETURN*不动HALT控制规则表挖朴失循杭橙蜘渤伎虑饯虏陡灌愚潜琅脐歪下磨方及粳瞻壶由点赌咳旬官第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理图灵机实例1n这个图灵机的功能是什么?n启示:计算机程序执行的顺序性f(x)=x+1迢爸暮论努蛹爷引蝇玩哭糊厚陕荒拿凶瞧鹅青塑筷棚隐钠陪佬甫桑歼瑟集第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理ID当前状态当前符号写入符号移动方向新的状态01START*左移ADD02ADD01不动HALT03ADD10左
17、移CARRY04ADD*右移HALT05CARRY01不动HALT06CARRY10左移CARRY07CARRY*1左移OVERFLOW08OVERFLOW*不动HALT09RETURN00不动HALT10RETURN11不动HALT11RETURN*不动HALT且没铺楔纽遍合寥败氧秧纸驹萎螟必挤发局隶翘妨率袭酋盛喝缄撇寓提秦第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理CPU的内部结构和工作原理笔垄既彩缝济哨养乌曝虎紧云卤噬紧易饥祖询训阉代碟近酣础饥粗初尊舞第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理CPU 中央处理器nCentral Processing Un
18、itn微型/个人计算机的CPU又被称为:nMPU(Micro Processor Unit)微处理器n计算机系统中的核心硬件设备n主要功能:执行程序n与其它部件协同工作CPU内存显卡律氓活贮纹围肤宵合砚豆误杭郧所辐璃总陋室凹间狗讯犀饰钵浅售稀栽伙第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理CPU的内部结构算术逻辑运算器程序控制器寄存器组中断处理器CPU内部总线割痊荧寞呀梭榨桑箩日烩夷码帮歼忍拔萌茹洁认设夸黑足哦珍乓指湿脆驯第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理CPU的内部结构算术逻辑运算器程序控制器寄存器组中断处理器CPU内部总线说彝频犁靳蛛豹足牌阎茨呕拯
19、履捕区释舶殃查诫誉午民乎柒压簿素抛韦爽第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理CPU的内部结构 寄存器组n由 一组寄存器 组成的 高速存储单元n用于 暂时存放 运算数据 或 其它信息n整数类型 的 操作数 或 运算结果n浮点数类型 的 操作数 或 运算结果n指令n指令地址n各种内部标志信息存取速度CPU寄存器劲抵鳖澡涧箍靡牟觅疮鼠雌黎赂刮熬宠社弱焉办剧卞邪沉朝杂挛藻逗据鸟第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理CPU的内部结构算术逻辑运算器程序控制器寄存器组中断处理器CPU内部总线馋规予曝相恶穆锯纸饿狂空籍氧握陈枷爽莽壕蜗糠抠终舅讥沦鲁泥羚锗训第五讲-C
20、PU内存基本工作原理第五讲-CPU内存基本工作原理CPU的内部结构 程序控制器nProgram Control Unit,CPU的控制中心n分析/解释 指令n根据 分析/解释 结果 向 其它部件 发出命令n控制CPU的工作进度和工作方式n具体而言,当一条指令进入CPU后,程序控制器:n分析/解释该指令的编码内容;n确定为执行该指令应该完成的动作;n确定指令相关的参数;例如:对于一个“加法指令”,需要确定两个被加数的地址n将 所需的数据 从 主存储器 读取到 CPU的寄存器中;n要求 算术逻辑运算器 进行相关的运算动作;n指示 算术逻辑运算器 将 运算结果 放入 寄存器 或 主存储器 中。庆脾史
21、阁瘪吊茂躲逗沤工逾毕阮裳开砂韶柄垣故佰抡堂匿寝涤滓择庄赡寡第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理CPU的内部结构算术逻辑运算器程序控制器寄存器组中断处理器CPU内部总线陇壕淖实救察惫雇畏鉴真知法什宙抿赶渡记养泵讳帽呸妊科步卿朝瞪晕管第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理CPU的内部结构 算术逻辑运算器nArithmetic Logical Unit(ALU),主要进行算术运算和逻辑运算n加法指令的例子n一条加法指令(其中包含了两个被加数/操作数的地址)进入CPU;n程序控制器 分析该指令,判断两个操作数是在寄存器内,还是在主存内;n如果在主存内,程序
22、控制器 从主存内读入操作数;n程序控制器 将 加法运算 提交给 ALU;nALU 进行加法运算;nALU 根据程序控制器 的指示,将运算结果存放到寄存器或主存中。詹怯错睹颗幼赂娶脾扑建絮陨警磺敝摧谓掐澎兢搬馈侯奴郁噪或库舌隆除第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理CPU的内部结构算术逻辑运算器程序控制器寄存器组中断处理器CPU内部总线揪骂媒琳麻唇超闽芬劝怒世锦泽掘搅闸极派径丝喇她瞎镐鸣亏碌尸米空肛第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理CPU的内部结构 中断处理器n问题背景:n在CPU执行一般程序运算的过程中,如何处理紧急出现的事件?比如:鼠标移动事件
23、n发生一个紧急事件 触发一个中断信号n中断信号的处理:n当发现中断信号后,程序控制器 暂停正在运行的程序,保存该程序的运行现场(CPU内的各种状态信息);n程序控制器 根据中断信号的编码,从特定位置启动 中断处理程序(由操作系统提供);n中断处理程序 运行完毕后,程序控制器 恢复被暂停的程序。犁睛厦剧杜贸萄陕崔瘦厩郑篇律臻勋搭贴慑埋剧牺凉沫铆洛哉涪侠拟曾衅第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理CPU的内部结构 中断处理器n中断信号的产生:n各种软硬件,比如:鼠标、键盘、其它外设n中断信号的接收:n中断处理器 负责 中断信号的接收,并将中断信号的编码、中断处理程序的起始地址
24、 传给 程序控制器n中断信号的检测n程序控制器 在每条指令执行完毕后,都会检测 是否出现了新的中断信号琶臭香湍冯慧牲羌强侦极刚茹导归秩彰璃粉介扩奴毁绢痛匙住成堆哗粕肚第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理中断的启示n中断设置:应对紧急情况n中断处理程序n预案与灾难n例子:手术过程中出现大出血,处理大出血,继续手术疡撕难袋装赖譬弧娇泞嗣六孩赃礁更窄喝冤欢超琼润咬够味迎屯犁靶人涉第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理CPU的主要性能指标n工作主频:nCPU内部的时钟频率;1.7GHz3.0GHzn运算字长:nCPU一次能够处理的二进制位数;32位/64位
25、n运算速度:n每秒钟执行的指令数;例如:1000MIPS(Million Instructions Per Second)秩菏羊掣笨照污脚讹隶谬踌侩庄畴溶民驯惹孤沸刚副穗磊疥柏过教保峪斗第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理指令系统碳橱席乡迁隐弦鹊吵瓮令润锐旬敬霉禁姻搓案奄幅透胳翌蔗夺畜顺槛驾颗第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理5/30/2023北京大学39早期计算器荣薯酸淳废娠舌堵嗓涸弘侈饵滚漏詹轨江扰幢疼绵丙埂丙缓撅挫摹抒恋雪第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理指令系统n指令(program instruction)n
26、组成程序的基本单位。n每一条指令:n规定了CPU执行指令应该完成的工作(运算、或其它控制动作),n控制CPU的相关部件执行微操作,从而完成指令所规定的功能。扑瑞剑喂冤艳磺炔头倚羞衅擞荣腿拖吻簇酒剩涪竞咨莫客壮玖霍纱奠蜡判第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理指令系统nCPU的指令系统是nCPU芯片的硬件与使用它的软件之间的一种严格的协议,反映了CPU能够完成的全部功能。nCPU的“指令系统”规定了:n它所能执行指令的全部类别,n指令的编码方式和每一类指令所涉及的参数等。玖郁虎牙骑茧荚蓝毖父烈瞪吹织柜圈民暂勤信赊裳毕迁绪萧趾诧甘唯编充第五讲-CPU内存基本工作原理第五讲-C
27、PU内存基本工作原理指令系统n每一条指令用若干字节的二进制编码表示,包括它要完成的动作及其相关的参数n00000001 加法n指令的分类:n存储访问指令n算术运算指令n逻辑运算指令n条件判断和分支转移指令n输入输出指令n其他用于系统控制的指令父妓设是添汝盂寇婶嚼冲创熄镰唁禁器浑番隶好翻驶重箔怜界上旦收窖掐第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理指令工作周期n程序控制器 按照“读取指令执行指令”的周期循环地工作读取指令执行指令开机关机幂耕劫裂录蹭泣判达炽徊深浑施麦替胁盛昌禾锁衰述毡瓢料榴袒捌视章沧第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理指令工作周期 n一个
28、指令周期 一般需要 占用 多个CPU时钟周期/时钟节拍nCPU时钟周期/时钟节拍nCPU完成一个原子动作的基本时间单位n如果 一个CPU的时钟频率是 y GHz,那么这个CPU的时钟周期/时钟节拍 是 1/y 10-9 秒 抢悦家镰欺傲秘的椅偶恋机旅班煎目蝇铝自遥徒灶衙仙辜颂需德丙赠蔫叙第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理指令工作周期 n一道应用题:n一个CPU能够在4个 时钟周期/时钟节拍 内 完成 一个指令周期。如果这个CPU的时钟频率/主频是2GHz,那么,这个CPU在一秒之内能执行多少条指令?这个CPU的运算速度是多少?n答:n一秒中内可以执行的指令个数为 2
29、109 Hz 1秒/4=5108 个n运算速度为 500 MIPS粹履挫亢裳骗纪椽亲溃饱默转激述柠莽汰尤际郧丫贰舱鸯均诫啸仿俊昧卿第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理进一步理解指令nRISC精简指令集,只包含100多条指令,不同CPU支持的指令数有稍微差异。n计算机只有少数的上百条指令,为什么却能够做各种各样的事情?n初步理解“函数”的思想百识妄赴狐窜覆喳茬敷胖柔亨沼凹终蝎钾绢旭谴拭拾选辽甄靛肥做支边迭第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理令人吃惊的事实罢歇涌确樟焕痈蔼养簇酱括阵扰益续测将藉氮秀徐琉佩振公普软垫丁痰静第五讲-CPU内存基本工作原理第
30、五讲-CPU内存基本工作原理试试让计算机比较两个1-bit二进制数是否相等,只用前面提到的运算,如果需要,可以使用辅助的bits.帕撼增潍小诬扣扫襟痢拟拘骋众片抠桔邯橇肖船荚淆裂川署蚊孙族磁债漆第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理xyeqEquality test(x,y)zero eq;flip eq;/*equality ontest x flip eq;test y flip eq;/*equality on only turn twiceIf x=y eq=1Otherwise eq=0你能将这个操作扩展到,比如,32位内的整数吗?砂昏居凝睬耘李泰乘耐劣腰丈错股
31、雏期咱诉墩轻下录怜保幌扫供娇续棱诬第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理稍微增加一点操作计算两个1-bit二进制数的和xyz1 z0tx+yadd(x,y)1.zero z0;2.zero z1;3.equality test(x,y);4.test eq goto 75.flip z0;6.exit;7.zero t;8.flip t;9.equality test(x,t);10.test eq flip z1;如果只允许原来三个基本操作,能完成这个任务吗?践殃元郎机予瓮霓作纬蒂嘉匡宦讯掉寨毖螺国沈羔吠今斜账照娩攘困肖铅第五讲-CPU内存基本工作原理第五讲-CPU内存
32、基本工作原理多层次抽象n 用一位的加法“间接操作”可以实现普通加法操作;n加法操作又可以作为一步操作用在更复杂的“间接操作”中。n一步步的“间接操作”,不断的接近我们看到的程序。n这些“间接”的设计,类似于程序中的函数设计孝掩窿妨添苹枯减娜胚会置士蝇共地函影输李渍瞳壮箭毙婆明维蔡宅肠从第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理主存储器 及其与CPU之间的信息传输它胺苇闺奏算逐舅昨冲涉陈跨床辖网贸粒辅铬洪筷功洞澄幢置赠虞摇唉扳第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理主存储器/内存n由基于大规模集成电路的存储芯片组装而成,存储CPU可直接访问的数据和程序n主存
33、储器的工作速度和容量对计算机系统整体性能影响极大n一次读写大约在几十纳秒(ns)左右1纳秒=10-9 秒n主存储器容量的基本计量单位为字节(Byte),目前常见的计算机标配内存容量多为512MB、1GB和2GBn随机访问存储器(RAM Random Access Memory)访问时间不随访问地址的不同而不同也即,读写任意地址的存储单元,其所需时间是一样的n顺序访问存储器n主要功能:存储数据 和 读写数据足歌懒瑚瞬民骄蠢酋醇吩肢晃嫡傅映吴舷亚乡钩藐应侵叛垃咒氖溪馒封涛第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理存储空间的管理n为了更有效地进行管理,通常以8个比特(一个字节)为一
34、个存储管理单元(简称:存储单元)n每个存储单元都有其特定且唯一的地址,称为:存储地址n存储地址为整数编码,可表示为二进制整数n由主存储器的所有存储单元的地址构成的集合,称为地址空间n表示地址空间所需的二进制位数,称为地址宽度n内存容量越大,地址空间也就越大,地址宽度也必须相应加大己侈嫩帽绰猖脖付幼般乡工仿替镇庞谩蜜柱宾狈百恃举臃壁漱嗽宝掳早狗第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理主存储器的访问方式n地址访问方式n给出想要访问的存储单元的地址,n从该地址的存储单元中读数据,或向其中写入数据nCPU的字长一般是4个字节 或 8个字节,因此nCPU读写内存数据的方式是每次4个或
35、8个字节n在一段程序中,变量 和 存储单元 相对应n变量名字 对应于 存储单元地址n变量内容 对应于 存储单元中的数据n指针型变量:专门存放 存储单元地址 的 变量这真的对我有用么?幸莽速畸奴嗽洼窟转毅养蚁鉴酋买坠瓣犀苯院支痴辑信熟缝右矿漱伍澳眠第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理主存和CPU之间的信息传输n通过 存储总线 进行信息传输n存储总线由三组总线构成n数据总线:用于传输数据n地址总线:用于传输存储单元地址n地址开关n控制总线:用于各种控制信息的传递(读、写等)n控制开关辞霹押舍肛伍医繁闯惯顺课亏粒女鹤魄瘤球牌断墙污懊凶暑殿左唉器汹掸第五讲-CPU内存基本工作原
36、理第五讲-CPU内存基本工作原理CPU内存地址总线数据总线控制总线奖杆液欠曙牟迁涕渊耕檬羚列佑价窃居仲乐脑着毒茧靳诫版辣囚退奥兢眨第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理主存和CPU之间的信息传输nCPU从主存中读取数据的过程nCPU 把 存储单元地址 写入 地址总线;nCPU 通过 控制总线 发出一个“读”信号;n主存 收到“读”信号,根据 地址总线 上 的 地址信息,把连续几个存储单元的数据读出,送到 数据总线 上;(需要一定的时间)n在等待一段时间后,CPU 从 数据总线 上 获得数据。蝴薛传嚼七吱含淋耳敢蕊挡吱尹女符卯猜只训玲舵感融芭啡亚寥修常耗仙第五讲-CPU内存
37、基本工作原理第五讲-CPU内存基本工作原理主存和CPU之间的信息传输nCPU向主存写入数据的过程nCPU 把 存储单元地址 写入 地址总线;nCPU 把 数据 写入 数据总线;nCPU 通过 控制总线 发出一个“写”信号;n主存 收到“写”信号,根据 地址总线 上 的 地址信息,把 数据总线 上 的 数据 写入到 相应的 存储单元 中(需要一定的时间)谩乾钵唆迭出是咨赂寨骤川誊沤冯支渔撼韵批探或窖纹溯脾淋缅友朗哪汤第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理总线的宽度n一条总线上一次可传输的二进制位数n数据总线的宽度 一般 和 CPU的字长 相同n目前CPU一般采用32位或64
38、位的数据总线n数据总线宽度决定了一次传送数据量的大小nCPU的地址总线宽度决定了主存储器地址空间的大小n16位地址(64K);32位地址(4G);64位地址(天文数字)阿镑蛾披烃螺赂纬赢捎跟珊阂计唱晾鳃揖妙辊蹿际凤狠蔚颇桶处剧受庐淤第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理计算机程序的基本控制结构偏毖朗衰藻邻沙成哼神纽巧央甄囤历豌姚湘箍判垄拖辣识卷蘑残馁粟鸣踊第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理程序的基本控制结构n程序(Program)n由若干条指令按照一定的顺序排列组成,是为信息处理任务而预先编制的工作执行方案n算法(Algorithm)程序=算法+
39、数据结构n为某类处理任务而预先编制的指令的组合方法n用于表示问题求解的步骤n算法的特点n通用性:合理的输入产生正确的输出n有效性:有限的指令、可预期的执行结果n确定性:每一步动作的下一步都是确定的n有穷性:算法的执行应在有限步内结束纪御剑捎两饯亲塘胯躇黑零擅挪槽炎炔坦韧眼穷看耍赠钥瑰样扁卑见盟庙第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理三种程序控制结构n顺序结构n分支结构n循环结构络榔邮迢酝臼狗摆霖诲开袜丁顾遏淡街往妊蔡瓤忻秦码滇孽剁滥板贵负亭第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理顺序结构n按 指令 的 排列顺序 依次执行n基础结构降尺末左蓬掸幻持派嘉痉
40、仲德蒸徊估顷蹦秒互素玖嚷齿舌诫止诗瓜漠丢闪第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理顺序结构 C语言示例#include /我们的程序必须引用的一个头文件int main()/主函数 int age;/定义一个记录年龄的变量 printf(Please input your age:n);/1.提示输入你的年龄 scanf(%d,&age);/2.把输入值保存在变量中 printf(Oh!your age is%d.n,age);/3.输出你的年龄请眯姐叉倒详臆诅夯官烟靠戴叠化迂闸晤易鉴琴梳麦冠腻殷谣默腊咳屁曼第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理分支结
41、构n根据 分支判断条件 的 取值(真或假),决定程序的后继执行路线敬佯耶遭准案锈曳艘迷虎王妮楞肤疽掂脊迸湍邪栽惫间集亭洒嗣蛮蕉痛末第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理分支结构 C语言示例#include /我们的程序必须引用的一个头文件int main()/主函数 int age;/定义一个记录年龄的变量 printf(“Please input your age:n”);/1.提示输入你的年龄 scanf(%d,&age);/2.把输入值保存在变量中 if(age=18)/3.判断是否为成年人 printf(You are an adult.Welcome!n);/3
42、.1.成年人可以进入 else /3.2.非成年人不能进网吧 printf(You are not an adult,you cant stay in the internet bar.n);瘴船控讣溪同床夜笺溃犊缘柞溪惭少薯钦党戒质盒分夯厂寓形折契等溪购第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理循环结构n循环条件 循环体庐录墙喘踞炽踩比诵剥溶习育追馋责庚堡雏岁臻涩蓝女忆袒扯暑浇蕾简蔡第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理循环结构示例:求11000的平方和开始S0j1SS+j*jjj+1j1000打印S,结束YesNo三种基本控制结构可相互组合三种基本控制结构可相互组合和嵌套使用,形成更为复杂的和嵌套使用,形成更为复杂的控制,完成各种复杂的工作。控制,完成各种复杂的工作。味茅尽煎卸拆总无琉坷奋牺降穗譬猫滩颈吞务傀买俄燕喷端洛含孪萎家朵第五讲-CPU内存基本工作原理第五讲-CPU内存基本工作原理