1《计算机组成原理和汇编言》课程大纲一、课程基本情况课程编号06z82560学分4.0开课学期秋春夏(小学期)课程名称(中文)计算机组成原理与汇编语言(英文)ComputerOrganizationandAssemblyLanguage课程类别必修限选任选;1年级2年级3年级4年级课程学时及其分配课内总学时课内学时分配课外学时分配72讲课学时72课程准备和复习24实验学时0实验/上机准备10上机学时24课外上机20教学方式课堂讲授为主实验为主自学为主专题讨论为主考核方式评分依据考试(百分制)期末开卷考试(80%)+平时成绩(20%)适用院系适用专业计算机学院,高等工程学院计算机软件与理论,计算机应用技术,计算机系统结构先修课程预备知识数字电路(数字逻辑)、计算机导论教材与参考文献(1)《计算机组成原理》,高教出版社,唐朔飞编(2)《计算机组成原理教程》科学出版社,白仲英、韩兆轩编(3)《IBM-PC汇编语言程序设计》清华大学出版社沈美明、温冬婵编著(4)《IBM-PC汇编语言程序设计》科学出版社熊桂喜编著(5)《计算机组成原理教程》科学出版社,白仲英、韩兆轩编(6)《计算机组织与结构(性能设计)》清华大学出版社,影印版(ComputerOrganizationandArchitecture—DesigningforPerformance)二、教学目标《计算机组成原理与汇编语言》是计算机系本科专业中的重点专业基础课。在四年的本科教学计划中,本课程一般应安排在第二学年的下学期。本课程从普遍性和原理性的角度出发,讲述计算机硬件系统的组成、各部件的结构及工作原理,结合当今流行的微机系统结构和IBM-PC机汇编语言程序设计知识的学习,使学生从普遍原则和典型案例两个角度理解计算机的组织与结构和工作过程,掌握计算机硬件系统的基本设计方法和汇编语言程序设计方法,培养学生具有分析、设计和开发计算机硬件系统的基本能力,为后续课程打下坚实2的基础。三、课程简介《计算机组成原理与汇编语言》课程定位为为学生介绍数字电子计算机单机系统的组成及其工作原理。主要内容包括:运算器及运算方法,指令系统设计及IBM-PC汇编语言,存储系统(包括内部存储器、高速缓冲存储器、外部存储器、虚拟存储系统等)的结构和工作原理及其在微机中的实现,CPU的结构、功能及指令的运行分析,微程序技术及应用,总线技术、输入输出技术及与此相关的汇编语言程序设计技术。本课程是一门原理性和实践性都很强的课程。课堂教学、课程试验与课后习题密切配合,课堂教学过程中注重将系统原理与当今计算机硬件技术的发展相结合,鼓励学生在学习和试验过程中发挥个人想象力和独创精神。要求学生首先理解计算机各个部件的基本原理、组成及编程知识,然后能进行基本设计,并通过上机进行验证和练习,在此基础上,能进行有一定难度和规模的硬件、软件设计作业。经过本课程的学习,使得学生能够深刻理解计算机的整体组成和部件内组成,掌握主要计算机部件的工作原理和设计方法,能够进行主要计算机部件的设计和分析,能够在汇编级进行程序设计,能够进行基本算术和逻辑运算、数制转换、字符串处理、I/O等汇编程序设计,并能够在PC机上编程验证。要求学生具备硬件系统分析、设计和编程能力,并为同步进行的硬件课程设计实验打下基础。四、课程教学内容及其基本要求《计算机组成原理与汇编语言》课程将主要按照计算机的部件组成及汇编级编程应用进行单元划分。主要单元包括:计算机组成概述,计算机中的数和代码,运算器及运算方法,存储系统(包括内部存储器、高速缓冲存储器、外部存储器、虚拟存储系统等),指令系统设计,IBM-PC指令系统,CPU的结构、功能及指令的运行分析,微程序技术及应用,总线技术,输入输出技术,I/O汇编语言程3序设计技术。第1讲计算机组成概述(2学时)目标:要求学生了解计算机系统的基本组成、功能、分类、部件组成及细分,以及常见的计算机结构。主要内容:(1)计算机系统的组成(2)计算机硬件的组成(3)计算机的工作原理(4)典型的常见的计算机结构图重点:计算机的基本组成、计算机的基本工作原理难点:计算机的组成原理图第2讲计算机中的数和代码(2学时)目标:要求学生了解计算机系统中如何通过二进制来表示正数、负数、零,如何表示定点数和浮点数,如何通过编码来进行输入、输出及存储、运算,如何进行数制转换,以及掌握几种常见的编码转换。主要内容:(1)定点数和浮点数(2)数的表示(3)定点数的加减法(4)数的特殊表示法:十进制表示法(5)字符的表示及编码(6)编码在输入、处理、存储、输出过程中的典型应用重点:数的表示、定点数的加减法、常见编码难点:补码运算第3讲存储系统(16学时)目标:要求学生理解计算机系统中存储系统(包括主存储器、高速缓存、辅助存储器等)这一最重要部件的分类、层次结构、部件组成、工作原理,能4够进行基本存储系统的设计和分析。主要内容:(1)存储器的分类、性能指标、层次结构(2)半导体主存储器的种类、功能及电路组成、芯片结构及设计(3)高速缓冲存储器种类、功能组成、结构及设计(4)辅助存储器种类、组成及原理重点:内存的种类和内部组成及工作原理,主存储器芯片级设计,高速缓存的设计。难点:各类存储器的准确工作原理,内存系统的设计第4讲指令系统设计(6学时)目标:要求学生理解计算机系统中指令系统设计时要考虑的因素以及如何进行指令操作数的寻址。通过典型指令系统的分析,能够进行其他指令系统的设计。主要内容:(1)指令的格式(2)指令的寻址方式(3)指令系统的设计(4)典型指令系统的分析重点:指令的寻址方式及具体实现,指令系统的设计。难点:给定需求的指令系统的设计第5讲IBM-PC指令系统及汇编程序设计(10学时)目标:要求学生在学习指令系统设计的基础上,重点掌握IBM-PC机(基于Intel80x86CPU)的指令系统,包括它的寻址方式、主要指令及指令的汇编级编程。主要内容:(1)80x86指令的格式(2)8086指令的寻址方式5(3)8086指令系统(4)主要指令的基本编程应用重点:8086指令的寻址方式,8086指令系统、8086指令编程。难点:8086指令的寻址方式,指令编程。第6讲中央处理器——运算方法(10学时)目标:要求学生通过本部分内容的学习,理解CPU运算功能的器件实现。包括:运算器的组成及实现、加减法运算及其实现、乘法运算及其实现、除法运算及实现、浮点数运算及十进制运算、ALU的组成及实现等。主要内容:(1)运算器的基本结构(2)加减法运算及其实现(3)乘法运算及其实现(4)除法运算(5)浮点数运算和十进制数运算(6)算术逻辑运算单元(ALU)重点:运算器的组成及工作原理、乘法运算及实现、乘法运算及实现、ALU。难点:乘、除法运算及实现。第7讲CPU控制单元设计(10学时)目标:要求学生通过本部分内容的学习,理解CPU的功能组成及实现原理,数据通路的组成、工作原理及设计要点,指令流程与组合逻辑控制器指令的微程序实现原理,以及为程序控制器的设计要点。能学习和掌握数据通路设计、微程序控制器设计。主要内容:(7)CPU的功能与组成(8)数据通路设计(9)指令流程与组合逻辑控制器(10)微程序原理(11)微程序控制器设计6重点:数据通路设计、指令流程、微程序控制器设计。难点:数据通路设计、微程序控制器设计。第8讲总线与输入输出(4学时)目标:通过本部分内容的学习,能够理解计算机总线的组成及基本分类,理解计算机I/O接口及4种I/O方式的基本原理和过程。主要内容:(1)总线的组成和分类(2)输入输出接口的组成(3)4种I/O方式重点:总线的组成、4种I/O方式难点:中断控制方式。第9讲输入输出程序设计(12学时)目标:深入了解IBMPCI/O系统的组成及具体实现,通过利用BIOS及DOS功能调用,能够进行典型的汇编级I/O程序设计,包括中断程序设计、直接I/O编程、典型外部设备程序设计。主要内容:(1)IBM-PC的三种I/O类型及组成(2)直接I/O程序设计(3)中断处理程序设计(4)键盘I/O程序设计(5)显示I/O程序设计(6)磁盘I/O程序设计重点:中断程序设计、键盘I/O程序设计、显示I/O程序设计、显示I/O程序设计、磁盘文件I/O程序设计。难点:中断驻留程序设计、磁盘文件I/O程序设计。7五、课程知识单元和知识点1.CAO01:计算机组织与结构总论(2学时)知识点:(1)计算机系统的组成(2)计算机硬件的功能、部件组成、细分及关系(3)计算机的结构(4)计算机的工作原理2.CAO02:计算机中数和代码(2学时)知识点:(1)定点数和浮点数(2)数的表示(3)定点数的表示法(4)BCD码(4)字符的表示与ASCII码(5)数和代码在计算机处理中的作用3.CAO03:存储系统(包括层次结构,主存储器,Cache,外部存储器,虚拟存储系统等内容)(16学时)。知识点:(1)存储器的分类、性能指标、层次结构(2)半导体主存储器的种类、功能及电路组成、芯片结构及设计(3)高速缓冲存储器种类、功能组成、结构及设计(4)辅助存储器种类、组成及原理(5)虚拟存储系统(介绍)4.CAO04:指令系统与汇编语言(包括指令系统,指令格式,寻址方式,指令系统设计,汇编语言编程等)(16学时)知识点:(1)指令的格式(2)指令的寻址方式(3)指令系统的设计(重点)(4)典型指令系统的分析8(5)8086指令寻址方式(6)8086指令系统及基本编程技术5.CAO05:CPU(包括运算单元、运算方法,CPU的组织与结构)(10学时)知识点:(1)运算器的基本结构(2)加减法运算及其实现(3)乘法运算及其实现(4)除法运算(5)浮点数运算和十进制数运算(6)算术逻辑运算单元6.CAO06:控制单元(包括控制通路与数据通路,指令系统的执行实现,硬接线控制单元,微程序控制单元)(10学时)知识点:(1)CPU的功能与组成(2)数据通路设计(3)指令流程与组合逻辑控制器(4)微程序原理(5)微程序控制器设计7.CAO07:总线技术(4学时)知识点:(1)总线的组成和原理(2)I/O接口(3)程序查询I/O方式(4)中断与中断I/O方式(5)DMAI/O方式8.CAO08:I/O技术与汇编语言程序设计(12学时)知识点:(1)宏汇编程序结构(2)输入输出代码转换及算术运算程序设计(3)字符串处理程序设计(4)直接I/O程序设计(5)中断程序设计9(6)键盘/显示器程序设计(7)磁盘文件操作程序设计六、课程实践环节1.单独配套的硬件课程设计实验(属于另外一门单独课程)2.汇编语言的编程上机实验课程实验(一)(4学时)实验名称:宏汇编语言程序的汇编、连接和DEBUG调试实验目的:通过实验使得学生掌握宏汇编程序命令行形式的汇编、连接机DEBUG调试技巧。实验内容:冒泡排序程序、十六进制至十进制ASCII码转换程序的上机调试实现。1.命令行形式下的程序编辑、汇编、连接及运行;2.DEBUG的基本操作和调试技术。课程实验(二)(8学时)实验名称:汇编语言程序的基本编程技术实验目的:通过上机试验,汇编、调试,掌握汇编程序的基本设计和实现技术。实验内容:基本汇编程序的设计实现1.数制转换与算术运算程序;2.字符串比较、移动、复制、查找、排序、字典式排序程序;3.子程序调用及递归调用课程实验(三)(12学时)实验名称:I/O汇编语言程序的编程实现实验目的:通过上机试验,汇编、调试,掌握I/O汇编程序的设计和实现技术。实验内容:I/O汇编程序的设计实现1.中断驻留程序;2.键盘输入控制程序;3.显示输出控制程序;4.磁盘文件输入/输出操作程序。