第一章、绪论
- 系统总线一般分为数据总线DB,地址总线AB,控制总线CB三个类别,
- DB用于传送数据信息,
- AB是专门用来传送地址的,主要是指令地址,操作数对应的主存地址或者外设地址
- CB来传送控制信号和时序信号。
- cpu性能(12)
- 提到cpu性能,我们首先想到的是主频。
- 反映cpu计算能力另外一个重要指标是计算机的字长。
第二章、数据信息表示
- 计算机中广泛使用二进制,而不使用十进制,原因如下(18)
- 二进制在物理上最容易实现,例如可以只用高低两个电平表示1和0,也可以用脉冲的有无或者脉冲的正负表示他们
- 二进制的编码、计数、加减运算规则简单。
- 二进制的两个符号“1”“0”正好与逻辑命题的两个值“是”和“否”或真假对应,为计算机实现逻辑运算和程序中的逻辑判断提供了便利的条件。
- 机器中小数点的位置(20)
- 第一种:规定小数点的位置固定不变,这时的机器数称为“定点数”
- 第二种:规定小数点的位置可以浮动,这时的机器数称为“浮点数”
- 非数值数据的信息表示(31)
- ASCII:美国标准信息交换码,使用7位二进制编码来表示一个符号。
- ASCII码中每个字符占用一个字节空间。
第三章 数值运算及运算器
- 反码加减运算规则(46)
- 参加运算的两个操作数均用反码表示。
- 符号位作为数的一部分参加运算。
- 若为加法运算,两个操作数直接相加,若为减法运算,将减数连同符号位变反后与被减数相加。
- 如果运算时,符号位产生进位,则在末位加1,即循环进位。
- 运算结果用反码表示。
- 移位操作按移位性质可分为(50)
- 算术移位
- 逻辑移位
- 循环移位
- 浮点加减运算(69)
- 设有两个浮点数:X=Mx X 2EX,Y=My X 2Ey,要实现X±Y,需要对阶、尾数和或求差、规格化处理、舍入处理四个步骤才行
第四章、指令系统
- 计算机中指令的存储及执行(800)
- 在计算机内部存储及处理的信息分为数据信息和控制信息两大类。
- 指令格式(80)
- 指令格式一般由操作码字段和地址码字段两部分组成。
- 操作数寻址方式(91)
- 隐含寻址
- 立即寻址
- 寄存器寻址
- 直接寻址
- 间接寻址
- 寄存器间接寻址
- 变址寻址
- 基址寻址
- 相对寻址
- 堆栈寻址
第五章、中央处理器
- 模型机主机系统由模型机cpu和模型机主存储器组成,通常设计cpu的步骤为:(148)
- 确定机器的总体结构,设计各部件的组成及其数据通路,并且根据部件的工作原理,设计相应的控制信号
- 设计机器的指令系统及时序系统,拟定指令流程,确定微操作控制信号
- 设计控制部件,即设计出在时序系统配合控制下,产生控制机器运行的各种微操作控制信号的控制部件。
- cpu的发展——流水线技术(199)
- 机器设计者提出采用流水线方式进行cpu设计的方案,即在一条指令送入流水线后,还未全部执行完,则可以向流水线送入下一条指令去执行。
第六章、存储系统
- 存储器分类——按存储方式分类(204)
- 随机存取存储器,RAM
- 只读存储器,ROM
- 顺序存取存储器,SAM
- 直接存取存储器,DAM
- cache存储器——替换策略(232)
- 随机算法
- 先进先出算法
- 近期最少使用算法
- 最优化算法
- 虚拟存储器——基本概念(234)
- 虚拟存储器的工作原理和cacahe的工作原理十分相似,它把主存和辅存划分为若干个小块,主存中每一小块都是辅存中对应小块的副本。程序和数据一开始都存放在辅存中,在cpu用到他们时才调入主存,如果主存已被装满,则采用适当的替换算法在主存和辅存之间交换。
第七章、输入/输出系统及外围设备
- 输入/输出接口,由于I/O设备的多样性,接口电路成为计算机系统中最复杂的部分,一般来说接口电路有以下功能(260)
- 进行地址译码,以实现cpu与指定设备间的信息交换。
- 对数据提供缓冲,以便cpu快速地与各种速度的外围设备进行速度匹配
- 信息交换,使cpu与外围设备信息的格式,电平一致.
- 提供有关数据传送的协调状态,如设备准备好、设备忙等
- 提供时序控制,以满足各种外设在时序控制方面的要求。
- 程序中断方式——中断源和中断类型(267)
- 中断源:引起中断的各种事件称为中断源,中断源可以是外部系统,也可以是内部系统,设置是处理机本身。中断可以是由硬件引起的,也可以是由软件引起的,常见的中断源有外围设备,处理机中断,存储器产生的中断,控制指令,定时,硬件故障等。
- 中断处理过程——中断过程分为五个阶段(269)
- 中断请求
- 中断判优
- 中断响应
- 中断处理
- 中断返回
- 总线的控制方式
- 总线控制器的仲裁方式有集中式仲裁和分布式仲裁两种。
第八章、汇编语言
- 机器语言(307)
- 机器指令是cpu能直接识别并执行的指令,它的表现是二进制编码
- 汇编语言的用途(309)
- 对软件的执行时间或存储容量有较高要求的场合,如操作系统的内核,工业控制领域、实时系统等。
- 在大型软件中某些影响系统性能的瓶颈程序或者频繁使用的子程序可以采用汇编语言编写
- 与硬件资源密切相关的软件程序,如设备驱动程序
- 没有合适的高级语言去开发的程序。
- 宏与子程序的区别(234)
- 从形式上看,调用宏时是通过宏名来实现的,调用子程序是通过CALL指令加子程序名实现的。
- 多分支程序设计(358)
- 对于多分枝程序通常有三种设计方法:条件转移法,地址表法,跳转表法
- 子程序的参数传递(370)
- 主程序和子程序之间的参数传递方法包括寄存器传递参数法、存储器传递参数法,地址表传递参数法和堆栈传递参数法。
- 汇编语言程序的开发(389)
- 在汇编语言程序开发过程中,通常会涉及三种类型的文件:源程序文件,目标文件,可执行文件
第十二章、系统功能调用
- DOS功能调用概述(385)
为了便于对DOS系统进行功能调用,dos对每个功能程序按顺序编号,即每一个程序对应一个功能号,通过传递功能号来调用dos系统提供的相应功能
- 设置入口参数
- 设置功能号
- 执行软中断指令INT 21H
代码
DATA SEGMENT
RABBITNUM DW 650
MONTHNUM DB ?
DATA ENDS
STACK1 SEGMENT PARA STACK
DW 20H DUP(?)
STACK1 ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START: MOV AX,DATA
MOV DS,AX
XOR CX,CX
MOV AX,0
MOV BX,1
NEXT: XCHG AX,BX
ADD AX,BX
INC CL
CMP AX,RABBITNUM
JAE RESULT
JMP NEXT
RESULT: MOV MONTHNUM,CL
MOV AH,4CH
INT 21H
CODE ENDS
END START