《普通高等教育“十一五”国家级规划教材·国家精品课程主讲教材·高等学校软件工程系列教材:计算系统基础》是国家精品课程“计算系统基础”的主讲教材。该课程作为软件工程专业的一门专业课程,以一个经典计算机指令集MIPS的简化版本DLX为线索,选择C语言作为载体,采用程序设计与系统级认识双优先的方式,使初学者在对计算机系统有基本了解的基础上,更好地掌握结构化程序设计的基本思想和方法。 《普通高等教育“十一五”国家级规划教材·国家精品课程主讲教材·高等学校软件工程系列教材:计算系统基础》采用自顶向下和自底向上相结合的方式介绍计算系统,全书分为三部分,共17章,其中第一部分为第1章~第5章,主要介绍程序设计基础,使没有编程基础的学生获取对程序设计的感性认识;第二部分为第6章~第14章,主要介绍计算机硬件和系统软件的基础知识,并通过介绍一个简单的DLX计算机系统的工作原理,来帮助读者理解高级语言程序是如何在计算机系统中运行的;第三部分为第15章~第17章,主要介绍函数、指针、数组和递归等内容,以及一些复杂程序在DLX系统下的运行机制。 《普通高等教育“十一五”国家级规划教材·国家精品课程主讲教材·高等学校软件工程系列教材:计算系统基础》有与“计算系统基础”课程配套的DLX套件。该套件提供了C语言(部分非常用功能除外)编译和基本运行环境,能够满足本课程教学的需要。此外,DLX模拟器提供了较完整的模拟CPU,有兴趣的学生可以尝试在DLX模拟器上设计和实现基于DLX指令集的仿真操作系统DLXOS。
《普通高等教育“十一五”国家级规划教材·国家精品课程主讲教材·高等学校软件工程系列教材:计算系统基础》特色:
计算系统基础是软件工程专业一门专业课程以一个经典计算机指令集MIPS的简化版本DL×为线索选择C语言为载体采用程序设计与系统级认识双优先的方式使初学者在基本了解计算机系统的基础上掌握结构化程序设计的基本思想和方法
本书采用自顶向下和自底向上相结合的方式介绍计算系统主要分为三部分.程序设计基础计算机硬件和系统软件基础知识以及函数、指针、数组、递归等深入主题,力求涵盖教育部软件工程专业教学指导分委员会制订的《软件工程专业规范》中对该课程的相关要求
随书提供与课程配套的DLX套件包含C语言(部分非常用功能除外)编译和基本运行环境能够满足本课程教学的需要。
第1章 引言
1.1 本书的目标
1.2 计算机与计算机系统
1.3 计算系统
1.4 本书的结构
习题1
第2章 C语言程序设计简介
2.1 高级程序设计语言
2.2 高级语言程序翻译技术
2.3 C语言概述
2.4 第一个例子:Hello World
习题2
第3章 类型和变量
3.1 类型和变量
3.1.1 3种基本数据类型
3.1.2 标识符
3.1.3 作用域
3.2 运算符
3.3 附加主题
3.4 问题求解:长度单位换算
习题3
第4章 结构化程序设计和控制结构
4.1 结构化程序设计
4.2 选择结构
4.2.1 if语句
4.2.2 if-else语句
4.3 循环结构
4.3.1 while语句
4.3.2 for语句
4.3.3 do-while语句
4.4 其他控制结构
4.4.1 switch语句
4.4.2 break和continue语句
4.5 问题求解
4.5.1 问题1:计算自然对数之底e的近似值
4.5.2 问题2:找出100一200之间的素数
4.5.3 问题3:计算字符串“int”出现的次数
习题4
第5章 测试和调试
5.1 软件开发过程
5.2 错误类型
5.3 测试
5.4 调试
5.5 正确编程
习题5
第6章 数据的机器级表示
6.1 位和数据类型
6.2 整数数据类型
6.3 二进制补码整数
6.4 二进制十进制转换
6.5 算术运算
6.6 逻辑运算
6.7 其他表示法
6.7.1 ASCII码
6.7.2 浮点数类型
6.7.3 十六进制表示法
6.8 C语言中的数据类型
习题6
第7章 数字逻辑电路
7.1 晶体管
7.2 门电路
7.3 组合逻辑电路
7.4 基本存储元件
7.5 存储器
7.6 时序逻辑电路
7.6.1 状态的概念
7.6.2 有限状态机
7.6.3 示例:交通灯控制器
7.7 DLX子集的数据通路
习题7
第8章 冯·诺依曼模型
8.1 基本组件
8.2 DLX-冯·诺依曼模型示例
8.3 指令处理
8.4 DLX的有限状态机
习题8
第9章 指令集结构
9.1 指令集结构概述
9.2 算术/逻辑运算指令
9.2.1 I-类型运算指令
9.2.2 R-类型运算指令
9.3 数据传送指令
9.3.1 基址+偏移量模式
9.3.2 示例
9.4 控制指令
9.4.1 条件分支
9.4.2 示例:计算10个整数的和
9.4.3 控制循环的两种方法
9.4.4 示例:利用标志加一列数
9.4.5 J指令
9.4.6 TRAP指令
9.5 DLX数据通路
9.6 C语言的数据类型与计算杌的ISA
习题9
第10章 机器语言程序设计
10.1 解决问题
10.1.1 实现3种结构的DLX控制指令
10.1.2 示例:文档加密
10.2 调试
10.2.1 调试操作
10.2.2 示例:调试器的使用
习题10
第11章 汇编语言
11.1 汇编语言程序设计
11.2 DLX汇编语言
11.2.1 指令
11.2.2 伪操作
11.2.3 示例:文档加密
11.3 汇编过程
11.3.1 -个“两趟”的过程
11.3.2 第一趟:构建符号表
11.3.3 第二趟:生成机器语言程序
11.4 链接
11.4.1 可执行映像
11.4.2 链接器的主要工作
11.5 编译:C-DLX
11.5.1 -个简单的例子
11.5.2 控制结构的例子
11.6 栈——一种抽象数据类型
……
第12章 输入和输出
第13章 自陷例程和中断
第14章 子例程
第15章 函数
第16章 指针和数组
第17章 递归
附录