计算机系统基础(一)

计算机系统基本组成和基本功能

存储器:不仅能存放数据,而且也能存放指令,形式两者没有区别,但计算机应能区分数据还是指令。存储阵列、地址译码器、读写控制电路
控制器:应自动取出指令。对指令译码生成控制信号。
运算器:进行加/减/乘/除四种基本算术运算,并且也能进行一些逻辑运算和附加运算。ALU、GPRs、标志寄存器等
输入设备/输出设备:

现代计算机结构模型
在这里插入图片描述
CPU:中央处理器;PC:程序计数器;MAR(memory address register):存储器地址寄存器
ALU:算术逻辑部件;IR:指令寄存器;MDR(memory data register):存储器数据寄存器
GPRs:通用寄存器组(由若干通用寄存器组成)

总线(数据传送):数据(MDR)、地址(MAR)和控制线

计算机是如何工作的?
程序在执行前
数据和指令事先存放在存储器中,每条指令和每个数据都有地址,指令按序存放,指令由OP、ADDR字段组成,程序起始地址置PC。

开始执行程序
第一步:根据PC取指令(从5号架上取菜谱)
第二步:指令译码(看菜谱)
第三步:取操作数(从架上或盘中取原材料)
第四步:执行操作数(洗、切、炒等具体操作)
第五步:回写结果(装盘或直接送桌)
第六步:修改PC的值(算出下一菜谱所在架子号)
继续执行下一条指令(继续做下一道菜)

指令和数据

程序启动前
指令和数据都存放在存储器中,形式上没有差别,都是0/1序列
采用存储程序工作方式:
程序由指令组成,程序被启动后,计算机能自动取出一条一条指令执行,在执行过程中无需人的干预。
指令执行过程中
指令和数据被从存储器取到CPU,存放在CPU内的寄存器中,指令在IR中,数据在GPR中。

指令中需给出的信息:
操作性质(操作码)
源操作数 或/和 源操作数2 (立即数、寄存器编号、存储地址
目的操作数地址(寄存器编号、存储地址
存储地址的描述与操作数的数据结构有关

现代计算机系统的层次结构

程序执行结果不仅取决于算法、程序编写而且取决于语言处理系统、操作系统、ISA、微体系结构
功能转换:上层是下层的抽象,下层是上层的实现

上层:程序员所关注的算法、编程和系统软件等层次
中层:计算机架构师所关注的ISA和微架构等层次
下层:电子工程师所关注的器件和逻辑电路等层次

ISA处于软件和硬件的交界面(接口)。
ISA是对硬件的抽象。所有软件都建立在ISA之上。
ISA是最重要的层次,那么什么是ISA呢?

ISA(指令集体系结构)
ISA指Instruction Set Architecture,即指令集体系结构,有时简称为指令系统。
ISA是一种规约(Specification),它规定了如何使用硬件

  • 可执行的指令集合
  • 指令可以接受的操作数的类型
  • 操作数所能存放的寄存器的结构
  • 操作数所能存放的存储空间的大小和编址方式;
  • 操作数在存储空间存放时按照大端还是小端方式存放;
  • 指令获取操作数的方式,即寻址方式
  • 指令执行过程的控制方式,包括程序计数器(PC)、条件码定义等。

ISA在通用计算机系统中是必不可少的一个抽象层,Why?
没有它,软件无法使用计算机硬件
没有它,一台计算机不能称为通用计算机

ISA和计算机组成是何关系?微体系关系

有没有乘法指令属于指令集体系结构(ISA)需考虑的问题,而如何实现乘法指令是微体系结构需要考虑的问题。

课程的三个主题:
表示(Representation)

  • 不同数据类型(包括带符号整数、无符号整数、浮点数、数组、结构等)在寄存器或存储器中如何表示和存储?
  • 指令如何表示和编码(译码)?
  • 存储地址(指针)如何表示?如何生成复杂数据结构中数据元素的地址?

转换(Translation)

  • 高级语言程序对应的机器代码是怎样的?如何转换并链接生成可执行文件

执行控制流(Control flow)

  • 计算机能理解的“程序”是如何组织和控制的?
  • 如何在计算机中组织多个程序的并发执行?
  • 逻辑控制流中的异常事件及其处理
  • I/O操作的执行控制流(用户态-内核态)
  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 计算机系统基础是计算机科学与技术领域中的一门重要课程,主要涵盖计算机系统的硬件、软件、操作系统、网络等方面的知识。在学习这门课程时,学生们会了解计算机系统的组成、设计原理以及工作原理。 首先,计算机系统由硬件和软件两个部分组成。硬件包括中央处理器(CPU)、内存、存储设备、输入输出设备等,它们共同协作完成计算机的运算和数据存储功能。软件则包括操作系统、应用软件和编程语言等,它们使计算机硬件能够发挥作用并实现特定的功能。 其次,计算机系统基础还涉及到计算机的操作系统。操作系统是计算机系统的核心软件,它负责管理和控制计算机硬件资源,为用户和应用程序提供统一的接口。学习计算机系统基础,我们需要了解操作系统的基本功能、进程管理、内存管理、文件系统等重要知识,以便能够合理地利用和管理计算机系统资源。 在计算机系统基础课程中,还会学习计算机网络的基础知识。计算机网络是计算机系统之间相互连接和通信的基础设施,它使得分布式计算成为可能,并且提供了全球范围内的信息传输能力。学习计算机网络的基础知识,我们需要了解网络协议、网络拓扑、数据传输、网络安全等方面的内容。 总之,计算机系统基础课程对于我们掌握计算机科学与技术领域的基础知识至关重要。通过学习计算机系统基础,我们能够深入了解计算机系统的原理和工作方式,为进一步学习和研究计算机科学相关领域奠定坚实的基础。 ### 回答2: 计算机系统基础是指对计算机硬件、操作系统和计算机网络等方面的理论和知识进行研究和学习。在CSDN上,我们可以找到很多优质的相关资料和学习资源。 首先,计算机系统基础主要包含了计算机的硬件结构和原理,包括中央处理器(CPU)、内存、输入输出设备等硬件组成部分以及它们之间的工作原理和协调方式。我们可以在CSDN上找到很多关于计算机硬件的文章和教程,可以帮助我们更好地了解计算机的工作原理和性能优化等方面的知识。 其次,操作系统是计算机系统基础中的重要组成部分,它负责管理计算机的资源和提供各种服务。在CSDN上,可以找到很多关于操作系统的文章和教程,包括常见的操作系统原理、文件系统、进程管理、内存管理等内容,这些资料能够帮助我们深入理解操作系统的工作原理和使用方法。 此外,计算机网络也是计算机系统基础中的重要内容之一。计算机网络连接了各种计算机和设备,实现了信息的传输和共享。在CSDN上可以找到很多关于计算机网络的资料,包括网络协议、网络拓扑、网络安全等方面的内容,这些资料对于理解和应用计算机网络是非常有帮助的。 总结起来,计算机系统基础是计算机科学的重要基础知识,通过在CSDN上学习相关内容,我们能够更好地了解计算机原理和系统工作方式,提升自己在计算机领域的知识和技能。 ### 回答3: 计算机系统基础是指对计算机系统的各个方面进行全面了解和学习的一门课程。它涉及到计算机硬件、操作系统、网络和计算机体系结构等方面的知识。 在计算机硬件方面,我们需要了解计算机的组成和工作原理,包括中央处理器(CPU)、内存、硬盘、显卡等硬件设备的作用和相互之间的关系。此外,我们还需要了解各种输入输出设备以及计算机系统的扩展和连接方式。 在操作系统方面,我们需要学习操作系统的功能和特点,如进程管理、文件系统、内存管理、设备管理等。我们还需要了解操作系统的启动过程和运行机制,了解不同操作系统的特点和使用方法。 在网络方面,我们需要了解计算机网络的基本概念、网络拓扑结构以及常见的网络协议。我们还需要学习如何利用网络进行数据传输和通信,并了解网络安全和数据保护的基本知识。 在计算机体系结构方面,我们需要了解计算机系统的层次结构、指令集和微指令的概念,以及计算机的运行模式和工作原理等。我们还需要了解不同的计算机体系结构和它们的特点,如单处理器、多处理器和分布式系统等。 通过学习计算机系统基础,我们能够深入了解计算机系统的各个方面,为我们进一步深入学习计算机科学和应用开发打下坚实的基础。它对我们理解计算机系统的工作原理、解决计算机系统中的故障和优化系统性能等都具有重要的意义。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值