
计算机组织与结构
文章平均质量分 89
wbl_z
这个作者很懒,什么都没留下…
展开
-
计算机组织与结构【17 输入输出】
外设提供了外部环境与计算机系统之间的数据交换I/O模块属于计算机系统,但外设是不属于的,通过I/O模块这一中介来沟通计算机系统和其他的各种外设状态信息是指外设的状态,如打印机会有多种不同的状态转换器是负责将计算机内的01信号转换成外部的如音频信号等,同时也要把外部的信号如音频信号转换成内部的01信号控制线传输的是对I/O模块的控制信息而上面的状态/控制模块传输的是CPU对外设的控制指令,如打印等,同时由于CPU传输给外设的控制信息和外设传输回来的状态信息是不会同时出现的,因此可以复用一个寄存器总线上的数据都原创 2022-07-04 14:19:21 · 405 阅读 · 0 评论 -
计算机组织与结构【16 控制器】
左边的图中粗的箭头表示控制信息,细的箭头表示数据的流动两种的划分并不严格,有些寄存器具有两种特点条件码寄存器不是必须的,有些机器没有条件码寄存器太多的寄存器不能显著减少存储器的访问:指的是当寄存器的数量多于一定数目时,对存储器访问的减少作用很小了,但带来了成本的上升,因此是不值得的子程序的调用会自动保存用户可见寄存器,这样子程序运行时就可以随意使用用户可见寄存器,而不用担心会对调用者的数据产生影响(即可以理解是如call指令包括了对寄存器保存的指令)但在子程序调用之外,想要保存相关的寄存器内容,就是程序员的原创 2022-07-04 14:18:43 · 391 阅读 · 0 评论 -
计算机组织与结构【15 指令周期和流水线】
只有机器关闭,发生错误,遇到停止计算机的指令时,程序才会停止。只要计算机开着,即使不使用,也是持续在执行指令的是指比如要取一个字符串,那么一次可能无法全部得到,那么就必须要分多次,多次的计算源操作地址,取字符串,计算目的操作数地址,存字符串。但这是一条指令的功能,所以直到全部取完后,才进行下一条指令的地址计算在这条指令执行完,下一条指令未开始的中间进行中断的判断(这时候PC已经是下一条指令的地址了)把间接地址的读取看作一个额外的指令子周期,相比于直接寻址,多了存储器的访问,所以单独作为一个子周期如果是同步的原创 2022-07-04 14:17:56 · 546 阅读 · 0 评论 -
计算机组织与结构【14 指令系统】
地址A指向的不一定是操作数本身,而可能是一个地址,这个地址才指向操作数,那么这个地址就叫做有效地址EA地址字段存放的就是操作数,操作数以立即数的方式给出地址字段是有效地址,可以直接获取操作数的有效地址EA,操作数始终可以表示为(EA)指的是虽然采用了间接寻址,虽然A的长度会限制放EA的范围(A长度可能很小,涵盖的地址空间小)但这未必是一件坏事寄存器数量少,所以需要的编号长度小,寄存器里面存放了操作数,所以EA=R当一个数/变量被多次使用时,数据存放在寄存器才有意义,因为寄存器速度快,如果只是从主存中取一个数原创 2022-07-04 14:17:24 · 246 阅读 · 0 评论 -
计算机组织与结构【13 总线】
总线包括芯片内部总线、系统总线、通信总线系统总线在不同位置不同场景下会有不同的含义,课程中主要把系统总线作为一个通用的概念,而不是特指某条总线地址不一定只能一次传输,事实上有时候是可以分成两次来传输地址的,这样就能扩展寻址空间,即寻址空间不是由地址线的宽度来决定的当总线被使用时,其他设备不能抢占要在优先级和公平性之间取得平衡仲裁器是硬件设备,集中处理总线使用权允许信号从仲裁器下发,按优先级从高到底传递(串行),从而高优先级的设备如果要使用总线,则可以截取允许信号繁忙线与各个设备之间是双向箭头,因为各个设备要原创 2022-07-04 14:16:40 · 416 阅读 · 0 评论 -
计算机组织与结构【12 虚拟存储器】
系统软件并不是操作系统实用程序一般是指程序的创建,文件管理等当然操作系统本身也是一个程序,自身还是需要占用资源的,同时又在分配计算机的资源通过仅将当前需要的页调用主存,其他的页暂时放在外存上,可以让主存中尽可能多的包含更多的任务,提高CPU的利用率分区方式:(系统区占用的大小在不同分区方式中都是一样的,不同分区方式是针对用户分区的)利用页可以使得一个任务的不同页不需要用连续的页框来存储,注意这里是把一个任务的所有部分都分成页装进来(还不是下面的请求分页的思想)任务越来越多,对内存的需求越来越大基本思想:优点原创 2022-07-04 14:15:37 · 851 阅读 · 0 评论 -
计算机组织与结构【11 冗余磁盘阵列(RAID)】
目的:逻辑上是一个磁盘,物理上是多个的,同时数据是分布在多个物理磁盘上的,这样才能多个磁盘并行工作来提高效率条带化即把一个磁盘/一个组(如后面的10,01,50)分散成多个条带放到不同的磁盘上优点:缺点:深色的是冗余盘,简单地把原来的数据进行了拷贝优点:缺点:只用于关键数据,重要数据的保存RAID 01是先进行条带化,再备份分组,如果disk0坏了,那么整个组都不能用了,即disk2和disk1不能联动RAID 10是先进行备份分组,再进行条带化,这样一组中坏了一个也不要紧,比如disk0坏了,还可以,di原创 2022-06-30 10:09:15 · 1065 阅读 · 0 评论 -
计算机组织与结构【10 外部存储器】
外存不在计算机系统的内部,不在冯诺依曼架构中用于存储不常用,数据量大的数据,外存是非易失的玻璃基材更具优势其中,能够支持磁头有较低的飞行高度。飞行高度是指磁头离盘片的高度,飞行高度越低,能分辨的范围就越小,那么磁盘上就能把更小的范围作为一个单元,这样存储的信息就能更多飞行高度取决于基材的性质,飞行高度越低,就要求基材越平整(否则就可能撞到),同时要求基材受外界环境因素如气温的影响要小,如温度变化时形变小基材的圆片是软的那么就是软盘,硬的就是硬盘软盘的存储数据量为1.44MB,常用的就是容量为1.44MB的3原创 2022-06-30 10:08:25 · 524 阅读 · 0 评论 -
计算机组织与结构【9 高速缓冲存储器(Cache)】
大部分是集成在CPU内部的,存放的还是主存内的信息,是主存内部分信息的副本如果不在cache中,那么会将包含这个字的固定大小的块读入cache,然后再从cache中把这个字传给CPUcache中除了要存内容,还得存这个内容的位置,因为CPU是通过位置来访问主存中的内容的,而不关心其中的内容。cache不是存放了完整的位置,而是通过tags标记来对应内容在内存中的位置如果大部分时间都是未命中,那么使用cache后反而时间会更慢,而事实上cache很好的处理了内存墙问题,因此大部分情况应当是命中的这是由于程序访原创 2022-06-30 10:07:35 · 499 阅读 · 0 评论 -
计算机组织与结构【8 内部存储器]
原来是32位机器,那么内存一般是4GB,因为232次方就是4GB,再多插内存条也没有用,因为地址最多232个,因此最多就只能区分出这么多的单元就相当于房间数不能增加了,如果想要增大,那么只能增加房间里可以住的人数,即提高寻址能力Q:每个计算机所能访问的地址有限?n长01串决定了2n个地址,由计算机的设计决定的,不由总线(地址线)决定。eg. 16位的线可以传2次表示32位地址一个位元是一个bit,有两种状态,用来代表0和1,至少要能被写入一次,否则不存储信息是没用的早期的存储器是由磁芯制作的,其原理为:将磁原创 2022-06-30 10:05:57 · 423 阅读 · 0 评论 -
计算机组织与结构【7 二进制编码的十进制数运算】
NCBD码用于解决精度和范围之间的矛盾,但代价是数字位数过多对发生10进位的要补上6,如1010为十进制的10,补上0110,就利用16进制的进位实现了十进制的进位对于红色1,是加法本身已经超过16,发生了进位到前面一位,同样要加6,补上因为进位而丢失的6即发生了16进制的进位或者值超过9,那么都需要进行补6操作(其中发生16进制的进位,会出现上面红色的1,这时候补6,一定不会再发生进位.值超过9,不会出现红色的1,但补6后仍然会发生16进制的进位,因此还是会产生红色的1,即两种情况都会进一位到高位)如果要原创 2022-06-30 10:04:36 · 313 阅读 · 0 评论 -
计算机组织与结构【6 浮点数运算】
这里是原码乘法,因此右移补0,注意原码乘法中符号位不参与运算,而是通过异或得到结果的符号位…(img-Adrw6kea-1656554599872)]原创 2022-06-30 10:03:53 · 195 阅读 · 0 评论 -
计算机组织与结构【5 整数运算】
异或门是不能多个一起输入的,只能两两。a⊕b = (¬a ∧ b) ∨ (a ∧¬b),由此推断,非门的门延迟也为1ty而与和或则可以多个一起输入,因为如或门,只要有一个1 ,那么结果就是1,与门,只要有一个0,那么结果都是0之所以s=x⊕y⊕c,把x和y先做异或,是为了节省时间,因为c需要由前面的数据得到,如上,Cn的延迟是2n ty,因此可以提前把xn⊕yn计算好,等Cn-1计算好后再和Cn-1异或,因此Sn的延迟为2(n-1)+3=2n+1(但第一和第二位除外,它们的延迟都是6,因为得到C1为2,而此原创 2022-06-30 10:03:14 · 1015 阅读 · 0 评论 -
计算机组织与结构【4 数据校验码】
以存储为例:注意,C’'不是和C去比较,因为既然D有可能出现差错变成D’,那么与之相应的校验码C也可能差错,因此,取出来的不是C,而是C‘,是将用D’生成的C‘’去和取出来的C‘比较一旦D存进存储器/网络,那么原来的D就消失了,取出来的就是D’。(如果能保证存进去和取出来的是一样的,那么也就不存在纠错,事实上,这是无法保证的)奇校验码:如果有奇数个1,那么C=0,否则为1偶校验码:如果有偶数个1,那么C=0,否则为1(理解:把原来的数据和这个校验码拼在一起时应当还是和校验码名字中的奇偶一致,所以奇校验码当1原创 2022-06-30 10:02:01 · 312 阅读 · 0 评论 -
计算机组织与结构【3 数据的机器级表示】
编码:用少量简单的基本符号对复杂多样的数据进行一定规律的组合。采用二进制的原因:用离散有限的数据去表示连续无限的数据,必然会产生偏差对于无符号整数不存在各种码的问题。各种码是用来解决如何表示带符号数的补码表示的数,不必关心其符号而可以直接相加,即对应机器不关心数据到底是无符号数还是带符号数补码的最高位符号位,如果是0那么和无符号一样,如果是1,那么就需要-2n-1,才是真正的值补码移码都只有一个0,而原码和反码中有两个0当移码的偏置常数为2n-1时,移码和补码仅第一位不同精度和范围的大小是相互矛盾的,因为k原创 2022-06-30 10:00:32 · 178 阅读 · 0 评论 -
COA计算机组织与结构【2 计算机的顶层视图】
Github主页 优快云主页利用系统总线把各个部分连接起来数据和指令存储在一起,存储器只需要按位置寻址,而无需去考虑其中的数据类型如I/O设备可以使得程序中断,因此CPU可以大胆去做其他的事情,因为I/O设备可以使得其他事情中断,从而继续处理待I/O输入后才发生的事情(如add),这样可以增大CPU的利用率,避免了CPU在等待I/O的过程中空闲为什么要禁止中断?内存(主存)。内存又分为随机读写存储器(RAM)和只读存储器(ROM)。前者主要用于大容量内存储器和调整缓冲存储器;后者用于存放专用的固定程序,原创 2022-06-30 09:57:26 · 523 阅读 · 0 评论