计算机系统导论
全新正版 极速发货
¥
41.55
5.3折
¥
79
全新
库存3件
作者袁春风 余子濠 编著
出版社机械工业出版社
ISBN9787111730934
出版时间2023-08
装帧平装
开本16开
定价79元
货号1203015538
上书时间2024-06-01
商品详情
- 品相描述:全新
- 商品描述
-
目录
目 录<br />前言<br />第1章 计算机系统概述 1<br />1.1 计算机基本工作原理 1<br />1.1.1 冯·诺依曼结构基本思想 1<br />1.1.2 冯·诺依曼模型机基本结构 2<br />1.1.3 程序和指令的执行过程 4<br />1.2 程序的开发与运行 7<br />1.2.1 程序设计语言和翻译程序 7<br />1.2.2 从源程序到可执行文件 9<br />1.2.3 可执行文件的启动和执行 11<br />1.3 计算机系统的层次结构 12<br />1.3.1 计算机系统抽象层的转换 12<br />1.3.2 计算机系统核心层之间的关联 14<br />1.3.3 计算机系统的不同用户 17<br />1.4 本书的主要内容和组织结构 19<br />1.5 小结 21<br />习题 22<br />第2章 高级语言程序 23<br />2.1 C语言概述 23<br />2.2 变量和常量及其类型 24<br />2.2.1 C程序中的变量及其类型 24<br />2.2.2 C程序中的常量及其类型 25<br />2.3 表达式及运算符 26<br />2.3.1 C语言表达式中的运算符 26<br />2.3.2 C语言程序中的运算 27<br />2.4 控制结构和函数调用 29<br />2.4.1 C语言中的控制结构 29<br />2.4.2 C语言中的函数调用 30<br />2.4.3 变量的作用域及其存储分配 32<br />2.4.4 C标准I/O库函数 35<br />2.5 小结 37<br />习题 37<br />第3章 数据的机器级表示 39<br />3.1 二进制编码和进位计数制 39<br />3.1.1 信息的二进制编码 39<br />3.1.2 进位计数制 40<br />3.1.3 进位计数制之间数据的转换 41<br />3.2 整数的表示 44<br />3.2.1 定点数的编码表示 44<br />3.2.2 无符号整数和带符号整数的表示 49<br />3.2.3 C语言中的整数及其相互转换 49<br />3.3 浮点数的表示 52<br />3.3.1 浮点数的表示范围 52<br />3.3.2 浮点数的规格化 53<br />3.3.3 IEEE 754浮点数标准 53<br />3.3.4 C语言中的浮点数类型 57<br />3.4 非数值数据的编码表示 59<br />3.4.1 位串或逻辑值 59<br />3.4.2 西文字符 59<br />3.4.3 汉字字符 60<br />3.5 数据的宽度和存储 62<br />3.5.1 数据的宽度和长度单位 62<br />3.5.2 数据的存储和排列顺序 64<br />3.5.3 数据扩展和数据截断操作 69<br />3.6 小结 70<br />习题 70<br />第4章 数据的基本运算 74<br />4.1 布尔代数和逻辑运算 74<br />4.1.1 布尔代数 74<br />4.1.2 逻辑电路基础 76<br />4.2 基本运算电路 77<br />4.2.1 多路选择器 77<br />4.2.2 全加器和加法器 77<br />4.2.3 带标志信息加法器 78<br />4.2.4 算术逻辑部件 79<br />4.3 整数加减运算 80<br />4.3.1 补码加减运算器 80<br />4.3.2 无符号整数加减运算 83<br />4.3.3 带符号整数加减运算 84<br />4.3.4 对整数加减运算结果的解释 85<br />4.4 整数的乘运算 86<br />4.4.1 无符号数乘法运算 87<br />4.4.2 原码乘法运算 88<br />4.4.3 补码乘法运算 89<br />4.4.4 两种整数乘的关系 90<br />4.5 整数的除运算 92<br />4.5.1 无符号数除法运算 93<br />4.5.2 原码除法运算 94<br />4.5.3 补码除法运算 96<br />4.6 整数常量的乘除运算 97<br />4.7 浮点数运算 98<br />4.7.1 浮点数加减运算 99<br />4.7.2 浮点数乘除运算 104<br />4.7.3 浮点运算异常和精度 105<br />4.8 小结 107<br />习题 108<br />第5章 指令集体系结构 113<br />5.1 程序转换概述 113<br />5.1.1 机器指令与汇编指令 113<br />5.1.2 指令集体系结构概述 115<br />5.1.3 生成机器代码的过程 116<br />5.2 IA-32指令系统概述 122<br />5.2.1 数据类型及格式 123<br />5.2.2 寄存器组织 124<br />5.2.3 操作数的寻址方式 128<br />5.2.4 机器指令格式 132<br />5.3 IA-32常用指令类型 133<br />5.3.1 传送指令 133<br />5.3.2 定点算术运算指令 137<br />5.3.3 按位运算指令 140<br />5.3.4 程序执行流控制指令 142<br />5.3.5 x87浮点处理指令 147<br />5.3.6 MMX/SSE指令集 150<br />5.4 兼容IA-32的64位系统 152<br />5.4.1 x86-64的发展简史 152<br />5.4.2 x86-64的基本特点 153<br />5.4.3 x86-64的基本指令 154<br />5.5 小结 157<br />习题 157<br />第6章 程序的机器级表示 160<br />6.1 过程调用的机器级表示 160<br />6.1.1 IA-32中过程的调用约定 160<br />6.1.2 变量的作用域和生存期 164<br />6.1.3 按值传递参数和按地址传递<br />参数 166<br />6.1.4 递归过程调用 171<br />6.1.5 非静态局部变量的存储分配 173<br />6.1.6 x86-64的过程调用 176<br />6.2 流程控制语句的机器级表示 181<br />6.2.1 选择语句的机器级表示 182<br />6.2.2 循环结构的机器级表示 186<br />6.3 复杂数据类型的分配和访问 189<br />6.3.1 数组的分配和访问 189<br />6.3.2 结构体数据的分配和访问 193<br />6.3.3 联合体数据的分配和访问 196<br />6.3.4 数据的对齐 198<br />6.4 越界访问和缓冲区溢出 201<br />6.4.1 缓冲区溢出 201<br />6.4.2 缓冲区溢出攻击 203<br />6.4.3 缓冲区溢出攻击的防范 206<br />6.5 小结 209<br />习题 210<br />第7章 程序的链接 223<br />7.1 编译、汇编和静态链接 223<br />7.1.1 预处理、编译和汇编 223<br />7.1.2 可执行目标文件的生成 225<br />7.2 目标文件格式 227<br />7.2.1 ELF目标文件格式 227<br />7.2.2 可重定位目标文件格式 228<br />7.2.3 可执行目标文件格式 232<br />7.2.4 可执行文件的存储器映射 234<br />7.3 符号表和符号解析 236<br />7.3.1 符号和符号表 236<br />7.3.2 符号解析 239<br />7.3.3 与静态库的链接 243<br />7.4 重定位 246<br />7.4.1 重定位信息 246<br />7.4.2 重定位过程 247<br />7.5 动态链接 251<br />7.5.1 动态链接的特性 251<br />7.5.2 程序加载时的动态链接 252<br />7.5.3 程序运行时的动态链接 253<br />7.5.4 位置无关代码 255<br />7.6 小结 260<br />习题 260<br />第8章 程序的加载和执行 266<br />8.1 进程与可执行文件的加载 266<br />8.1.1 程序和进程的概念 266<br />8.1.2 Linux系统的虚拟地址空间 267<br />8.1.3 进程的存储器映射 270<br />8.1.4 程序的加载过程 271<br />8.2 进程的控制 274<br />8.2.1 进程的逻辑控制流 275<br />8.2.2 进程的上下文切换 276<br />8.3 程序执行与CPU基本组成 278<br />8.3.1 程序及指令的执行过程 278<br />8.3.2 打断程序正常执行的事件 280<br />8.3.3 CPU的基本功能和组成 281<br />8.4 小结 283<br />习题 284<br />附录A gcc的常用命令行选项 287<br />附录B GDB的常用命令 288<br />参考文献 291
内容摘要
本书主要面向应用型大学计算机类专业学生,从程序员的视角出发,围绕可执行文件的生成、加载和执行,重点介绍如何利用计算机系统相关知识来编写更有效的程序。全书将每个环节涉及的硬件和软件的基本概念关联起来,帮助学生建立完整的层次框架,从而加强“系统观”。本书共分8章,涵盖计算机系统基础、高级语言程序、数据的机器级表示、数据的基本运算、指令集体系结构、程序的机器级表示、程序的链接、程序的加载和执行等内容。本书内容详尽、概念清楚、实例丰富,适合作为高等学校计算机专业计算机系统相关课程的教材,也适合相关专业的研究生和技术人员阅读参考。
主编推荐
本书主要面向应用型大学计算机类专业学生,从程序员的视角出发,围绕可执行文件的生成、加载和执行,重点介绍如何利用计算机系统相关知识来编写更有效的程序。
— 没有更多了 —
以下为对购买帮助不大的评价