0%

【计算机系统概论Yale.patt】0.引言

[TOC]

0. 引言

0.1 本书目标

自底层逐步向上,论述一个高层结构(CPU)在现实机器上的实现机制,如:

即以电路为起点,理解CPU的构造原理与性能评测和优化

  • 多个相互关联的程序之间的链接
  • 树结构
  • 随机数的生成
  • 高精度运算
  • radix变换
  • 数据封装
  • 组合查找、递归

为保证最佳效率,一些基本算法(查找和排序)用机器语言编写,需要考虑的因素

  • Cache、RAM大小
  • 内存访问速度
  • 流水
  • 多发
  • 多级缓存
  • Cache块
  • 及上述因素对程序性能的影响

0.2 Yale Patt前言

0.2.1 编书思想——自底向上

工程设计中采用自顶向下方法(已经了解底层构造)

学习过程采用自顶向上方法(便于理解)

0.2.2 全书脉络

从Mos管开始,依次介绍逻辑门、锁存器、各种逻辑结构(MUX、解码器、加法器、门控锁存器)。

通过逻辑电路的组合实现一个计算机部件(存储器)

介绍冯诺依曼模型

冯诺依曼机的实现——LC-3机简介

  • 机器语言编程
  • 汇编编程
  • C语言
  • 数据结构

0.2.3 章节内容

计算机底层机制

从底层基础知识,上升到操作系统和高级语言的接口层

第2章:bit的算数和逻辑运算,相关结构设计(加法器)

第3章:存储器设计。MOS管到存储器实现

第4章:冯诺依曼模型

第5章:LC-3机特性与组成

  • 物理IO
  • TRAP机制:调用操作系统服务
  • 基于N、Z、P的条件码跳转
  • 子程序调用和返回机制
  • 基本操作指令集合(ADD,AND,NOT)
  • 各种加载和寻址模式

第6章:编程方法与调试

第7章:汇编语言编程

第8章:物理设备的输入和输出

第9章:操作系统的陷入机制,子程序调用和返回机制

第10章:栈和数据转换的原理和机制

C语言

对C语言内部机制的学习,C语言能够清晰的表现软件和硬件的接口关系

将高层的C结构与底层的LC-3实现联系起来

第11章:高级语言编程概述

第12章:常量变量,运算符结合汇编联系底层机器

第13章:控制结构

第14章:源码调试

第15章:函数

第16章:递归技术

  • 涉及子程序调用/返回时的栈变化(10章),被调用者和调用者的链接方法,运行时活动记录,参数传递,动态声明

第17章:指针和数组

  • 对内存结构的理解

第18章:I/O函数

  • 流、可变长参数、C语言的格式控制符

第19章:总结。

  • 结构,动态分配内存,链表

0.2.4 作者经验

  • 注重理解,不需要死记硬背特性,规则
  • 自己动手
  • 深入底层
  • 涟漪效应:博学广思
-------------本文结束-------------