1第二章IBM-PC计算机组织2.1计算机系统概述计算机系统包括硬件和软件两大部分。硬件:三个主要组成部分,用系统总线连接。中央处理机CPU总线控制逻辑接口接口存储器大容量存储器I/O设备I/O子系统系统总线2软件:系统软件(核心是操作系统OS)MASM.EXETASM.EXELINK.EXETLINK.EXEDEBUG.EXE用户软件1981年推出,CPU采用芯片8088,机器字长16位,数据线8根,地址线20根,1MRAM,40KROMIBMPC32.2存储器存储器是用来存放程序、数据、中间结果和最终结果的记忆装置。存储单元的地址和内容存储器以字节(8bit)为单位存储信息每个字节单元有一个地址,从0编号,顺序加1地址也用二进制数表示(无符号整数,写成十六进制)16位二进制数可表示216=65536=64K个地址0000H~FFFFH字长16位,一个字要占用相继的两个字节低位字节存入低地址,高位字节存入高地址机器以偶地址访问(读/写)存储器字单元地址用它的低地址来表示476543210100111110000H(0000H)=9FH001001100001H(0001H)=26H000111100002H(0002H)=1EH110101110003H(0003H)=D7H存储器1514131211109876543210字高位字节低位字节1001111100100110(0000H)=269FH(0002H)=D71EH(0001H)=1E26H访问两次存储器字节5存储器地址的分段20根地址线220=1024K=1M=1048576地址范围00000H~FFFFFH小段:每16个字节为一小段,共有64K个小段小段的首地址00000H~0000FH00010H~0001FH00020H~0002FH…FFFF0H~FFFFFH6存储器分段:段起始地址必须是某一小段的首地址,段的大小可以是64K范围内的任意字节。物理地址:每个存储单元的唯一的20位地址段地址:段起始地址的高16位偏移地址:段内相对于段起始地址的偏移值(16位)(有效地址EA)物理地址=16d段地址+偏移地址16位段地址16位偏移地址0000+20位物理地址7IBMPC中有4个专门存放段地址的段寄存器(16位)代码段段寄存器CS数据段段寄存器DS堆栈段段寄存器SS附加段段寄存器ES例:(DS)=3000H,EA=1234H,物理地址=16d(DS)+EA=31234H存储器8K代码2K数据256堆栈02000H04800H04000H0200H0400H0480H逻辑段82.3中央处理机IBMPC机的CPU组成:8086/8088的寄存器组(16位):数据寄存器(4个通用寄存器)算术逻辑部件ALU控制逻辑工作寄存器(14个)AHALBHBLCHCLDHDLAXBXCXDX高8位低8位9指针及变址寄存器(4个)SP堆栈指针寄存器(存放栈顶的偏移地址)BP基址指针寄存器SI源变址寄存器DI目的变址寄存器段寄存器(4个)CSDSSSES10控制寄存器(2个)IP指令指针寄存器(存放代码段中的偏移地址,始终指向下一条即将执行的指令的首地址)PSW程序状态字寄存器OFDFIFTFSFZFAFPFCF1514131211109876543210条件码标志flag(记录程序中运行结果的状态信息)OF溢出标志SF符号标志ZF零标志CF进位标志AF辅助进位标志PF奇偶标志控制标志DF方向标志IF中断标志TF陷阱标志11例:MOVAX,1MOVBX,2ADDAX,BX指令执行后,(AX)=3,OF=0,CF=0,ZF=0,SF=0例:MOVAX,FFFFHMOVBX,1ADDAX,BX指令执行后,(AX)=0,OF=0,CF=1,ZF=1,SF=012寄存器与存储器的比较:寄存器存储器在CPU内部在CPU外部访问速度快访问速度慢容量小,成本高容量大,成本低用名字表示用地址表示没有地址地址可用各种方式形成132.4外部设备外部设备与主机(CPU和存储器)的通信是通过外设接口(Interface)进行的,每个接口包括一组寄存器。数据寄存器:存放外设和主机间传送的数据状态寄存器:保存外设或接口的状态信息命令寄存器:保存CPU发给外设或接口的控制命令外设中每个寄存器有一个端口(Port)地址,构成一个独立于内存的I/O地址空间:0000H~FFFFH14第二章作业Page222.1~2.5