程序是怎样跑起来的

程序是怎样跑起来的

免费查看
手机扫码
  • 微信扫一扫

    关注微信公众号

因版权原因待上架

编辑推荐

“计算机组成原理”图解趣味版,蹲马桶就能看懂的编程基础知识。

内容简介

《程序是怎样跑起来的》一书从计算机的内部结构开始讲起,以图配文的形式详细讲解了二进制、内存、数据压缩、源文件和可执行文件、操作系统和应用程序的关系、汇编语言、硬件控制方法等内容,目的是让读者了解从用户双击程序图标到程序开始运行之间到底发生了什么。同时专设了“如果是你,你会怎样介绍?”专栏,以小学生、老奶奶为对象讲解程序的运行原理,颇为有趣。本书图文并茂,通俗易懂,非常适合计算机爱好者及相关从业人员阅读。

作者简介

作者矢泽久雄,YAZAWA股份有限公司董事长兼总经理。GrapeCity信息技术集团顾问。电脑作家之友会会长。曾在某大型电子公司从事过电脑生产,在Software House做过程序员,现主要从事软件包的开发工作。工作之余笔耕不缀,从电路到编程语言均有涉及。代表作有《计算机是怎样跑起来的》《使用C语言学习程序设计的基础》《征服C++类和继承》等。自称软件艺人。

章节目录

版权信息

版权声明

前言

程序是怎样跑起来的——本书中涉及的主要关键词

本书的结构

第1章 对程序员来说CPU是什么

1.1 CPU的内部结构解析

1.2 CPU是寄存器的集合体

1.3 决定程序流程的程序计数器

1.4 条件分支和循环机制

1.5 函数的调用机制

1.6 通过地址和索引实现数组

1.7 CPU的处理其实很简单

第2章 数据是用二进制数表示的

2.1 用二进制数表示计算机信息的原因

2.2 什么是二进制数

2.3 移位运算和乘除运算的关系

2.4 便于计算机处理的“补数”

2.5 逻辑右移和算术右移的区别

2.6 掌握逻辑运算的窍门

COLUMN 如果是你,你会怎样介绍?

第3章 计算机进行小数运算时出错的原因

3.1 将0.1累加100次也得不到10

3.2 用二进制数表示小数

3.3 计算机运算出错的原因

3.4 什么是浮点数

3.5 正则表达式和EXCESS系统

3.6 在实际的程序中进行确认

3.7 如何避免计算机计算出错

3.8 二进制数和十六进制数

第4章 熟练使用有棱有角的内存

4.1 内存的物理机制很简单

4.2 内存的逻辑模型是楼房

4.3 简单的指针

4.4 数组是高效使用内存的基础

4.5 栈、队列以及环形缓冲区

4.6 链表使元素的追加和删除更容易

4.7 二叉查找树使数据搜索更有效

第5章 内存和磁盘的亲密关系

5.1 不读入内存就无法运行

5.2 磁盘缓存加快了磁盘访问速度

5.3 虚拟内存把磁盘作为部分内存来使用

5.4 节约内存的编程方法

5.5 磁盘的物理结构

第6章 亲自尝试压缩数据

6.1 文件以字节为单位保存

6.2 RLE算法的机制

6.3 RLE算法的缺点

6.4 通过莫尔斯编码来看哈夫曼算法的基础

6.5 用二叉树实现哈夫曼编码

6.6 哈夫曼算法能够大幅提升压缩比率

6.7 可逆压缩和非可逆压缩

COLUMN 如果是你,你会怎样介绍?

第7章 程序是在何种环境中运行的

7.1 运行环境=操作系统+硬件

7.2 Windows克服了CPU以外的硬件差异

7.3 不同操作系统的API不同

7.4 FreeBSD Port帮你轻松使用源代码

7.5 利用虚拟机获得其他操作系统环境

7.6 提供相同运行环境的Java虚拟机

7.7 BIOS和引导

第8章 从源文件到可执行文件

8.1 计算机只能运行本地代码

8.2 本地代码的内容

8.3 编译器负责转换源代码

8.4 仅靠编译是无法得到可执行文件的

8.5 启动及库文件

8.6 DLL文件及导入库

8.7 可执行文件运行时的必要条件

8.8 程序加载时会生成栈和堆

8.9 有点难度的Q&A

第9章 操作系统和应用的关系

9.1 操作系统功能的历史

9.2 要意识到操作系统的存在

9.3 系统调用和高级编程语言的移植性

9.4 操作系统和高级编程语言使硬件抽象化

9.5 Windows操作系统的特征

COLUMN 如果是你,你会怎样介绍?

第10章 通过汇编语言了解程序的实际构成

10.1 汇编语言和本地代码是一一对应的

10.2 通过编译器输出汇编语言的源代码

10.3 不会转换成本地代码的伪指令

10.4 汇编语言的语法是“操作码+操作数”

10.5 最常用的mov指令

10.6 对栈进行push和pop

10.7 函数调用机制

10.8 函数内部的处理

10.9 始终确保全局变量用的内存空间

10.10 临时确保局部变量用的内存空间

10.11 循环处理的实现方法

10.12 条件分支的实现方法

10.13 了解程序运行方式的必要性

第11章 硬件控制方法

11.1 应用和硬件无关?

11.2 支撑硬件输入输出的IN指令和OUT指令

11.3 编写测试用的输入输出程序

11.4 外围设备的中断请求

11.5 用中断来实现实时处理

11.6 DMA可以实现短时间内传送大量数据

11.7 文字及图片的显示机制

COLUMN 如果是你,你会怎样介绍?

第12章 让计算机“思考”

12.1 作为“工具”的程序和为了“思考”的程序

12.2 用程序来表示人类的思考方式

12.3 用程序来表示人类的思考习惯

12.4 程序生成随机数的方法

12.5 活用记忆功能以达到更接近人类的判断

12.6 用程序来表示人类的思考方式

COLUMN 如果是你,你会怎样介绍?

附录 让我们开始C语言之旅

C语言的特点

变量和函数

数据类型

标准函数库

函数调用

局部变量和全局变量

数组和循环

其他语法结构

结语

致谢

看完了

程序是怎样跑起来的是2015年由人民邮电出版社出版,作者[日]矢泽久雄。

得书感谢您对《程序是怎样跑起来的》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

你可能喜欢
用Go语言自制解释器 电子书
从零开始,用GO语言创造出另一门语言,体验从无到有实现类C语言的乐趣。
SQL必知必会(第5版) 电子书
1.SQL入门经典教程全新升级,麻省理工学院、伊利诺伊大学等众多大学的参考教材,中文版累计销量超14万; 2.本书没有过多阐述数据库基础理论,而是专门针对一线软件开发人员,直接从SQL SELECT开始,讲述实际工作环境中常用必备的SQL知识,实用性极强; 3.新版对书中的案例进行了全面的更新,并增加了章后挑战题,便于读者巩固所学知识; 4.作者为本书建立了一个配套网站,网址见书引言部分,书中所有数据库示例、挑战题答案可以在本书的网页上获得; 5.32开本,内容通俗易懂,一本让你在通勤路上就可以掌握SQL技术的图书。
Rust程序设计 电子书
本书对Rust进行了全面介绍,并提供了大量清晰易懂的示例,逐步指导读者用Rust编写出既安全又高性能的程序。
JavaWeb程序设计与案例教程(微课版) 电子书
包含大量微课视频,详细介绍各个重难点。
量子计算机编程:从入门到实践 电子书
量子计算编程从入门到实践书籍,圆形表示法阐释量子计算机编程。
计算机科学概论(第13版) 电子书
本书是计算机科学概论课程教材,对计算机科学做了百科全书式的精彩阐述。
SolidWorks 2020中文版机械设计从入门到精通 电子书
本书以SolidWorks 2020中文版为基础,帮助你掌握软件操作技巧,适合入门使用。
机器学习实战 电子书
《机器学习实战》面向日常任务的高效实战内容,介绍并实现机器学习的主流算法。