读《程序是怎样跑起来的》第八章有感

这一章主要是讲的源文件和可执行文件(EXE文件),计算机只能运行本地代码,本地代码是CPU可以解析和运行的程序,而并不能直接解析和运行源代码,这是因为作为计算机大脑的CPU只能解释已经转换成本地代码的程序内容。

对CPU来说母语就是机器语言,而转换成机器语言的程序就是本地代码,用任何语言编写的源代码,最后都要翻译成本地代码。否则CPU就不能理解了,我感觉CPU跟我还蛮像的,你要是跟我说方言或者其他国家的语言我也听不懂,只能听懂汉语。哈哈,开个小玩笑,也就是说,即使是用不同编程语言编写的代码 。转变成本地代码后,也都变成用同一种语言来表示了。

接着作者给出两张图片,一个是用记事本打开EXE文件后的本地代码,另一个是用数值罗列的本地代码,真是看不懂,怪不得要用编程语言呢。接着作者解释了什么叫编译器,编译器就是将高级编程语言编写的源代码转换成本地代码的程序。但每种编程语言都需要专用的编译器,根据CPU类型的不同,本地代码的类型也不同。因此,编译器不仅和编程语言的种类有关,和CPU的种类和运行环境也是有关的。

后面讲了库文件和DLL文件以及如何到倒入库,书上作者讲的很详细了,就不一 一赘述了,最后作者提出的七个问答题很有内容,不过有些读一遍还是不太理解需要多读几遍,总的来讲,这一章的内容比较多,也比较难懂,看了一遍感觉还是很懵,感觉自己懂的真是太少了,以前觉得学好书上的知识就好了,感觉自己真傻!!

原文地址:https://www.cnblogs.com/wangli155167/p/10357794.html

时间: 2024-11-07 23:11:11

读《程序是怎样跑起来的》第八章有感的相关文章

读程序是怎样跑起来的第二章

IC,是集成电路的简称,有模拟IC和数字IC两种.IC的所有引脚,只有直流电压0V和5V两个状态.也就是说IC的一个引脚,只能表示两个状态.程序中,即使是十进制和文字等记述信息,在编译后也会转换成二进制数的值,所以,程序运行时计算机内部处理的也是用二进制数表示的信息.对于用二进制数表示的信息,计算机不会区分它的数值,文字还是某种图片的模式等,而是根据编写程序的各位对计算机发出的指示来进行信息的处理或运算. 20世纪50年代,波兰数学家Jan Lukasiewicz,当时也和我们现在的同学们一样,

读《大道至简》第七八章有感

第七章的标题是“现实中的软件工程”,第八章的标题是“是思考还是思想”,文中主要以IBM的故事为例,告诉我们在软件工程技术的竞争中是很残酷的,敌人的敌人就是自己的朋友吧,软件当今不是一些软件工程师之间的争争吵吵,而是大公司之间相互制衡的结果,大公司在相互竞争激烈的时候,忽视了一些小公司,导致这些小公司在激烈的竞争中崛起.大公司们在标准.理论.语言上的争来夺去,未必全 然出于“软件实现”的考虑.对统一理论.统一工具.统 一过程的企图,其最终目的是在整个软件工程体系中的全面胜出. 除了软件本质力量的推

《程序是怎样跑起来的》第一章有感

在没有读<程序是怎样跑起来的>,这本书之前,我对于第一章所讲解CPU在脑子中只是知道它相当于是计算机的大脑,内部由数百万至数亿个晶体管构成.这本书在开始是就先对CPU的内部结构进行了解析,知道了CPU的内部是由寄存器,控制器,运算器和时钟四部分构成,各部分之间由电流信号相互联通.后来又向我们解释了内存,接着有告诉我们CPU是寄存器的集合体,而这一过程中最主要的就是了解寄存器是程序把其作为对象来描述的. 通过这一部分知识的学习,使我对CPU的内部结构又了初步的了解,虽然还是模糊的概念,但是积少成

程序是怎样跑起来的第7章有感

读<程序是怎样跑起来的>第七章有感 本章主要讲的是程序是在环境下运行的内容,首先操作系统和硬件决定了程序的运行环境,机器语言的编码被称为本地代码,程序员用C语言等编写的程序,在编写的阶段仅仅是文本文件,文本文件在任何情况下都能显示和编辑,称之为源代码,通过对源代码进行编译,就可以得到本地代码.CPU负责解析并运行从源代码编译而来的本地代码. Windows的前身操作系统是20世纪80年代的MS-DOS操作系统的广泛使用的时代,在MS-DOS的时代,如果想使用当时大热的文字处理软件----Jus

对比《网络是怎样连接的》PDF+《程序是怎样跑起来的》PDF+《计算机是怎样跑起来的》PDF

理解知识最好的办法是写一写汇编.从中感觉自己对浮点数在寄存器的存放机制了解还不够.加深了对基址寄存器和变址寄存器的了解.不足的地方在于有些例子陈旧了.记住0.1循环100相加不是10. 从计算机的内部结构开始讲起,以图配文的形式详细讲解了二进制.内存.数据压缩.源文件和可执行文件.操作系统和应用程序的关系.汇编语言.硬件控制方法等内容,目的是了解从用户双击程序图标到程序开始运行之间到底发生了什么.<程序是怎样跑起来的>图文并茂,通俗易懂,非常适合计算机爱好者阅读. <计算机是怎样跑起来的

Java笔试题二:读程序

1 public class SopResult { 2 3 public static void main(String[] args) { 4 5 int i = 4; 6 System.out.println("The result is: " + ((i > 4) ? 9.99 : 9)); 7 } 8 9 } 读程序,输出结果:The result is: 9.0 分析可知,本程序相当于: 1 public class SopResult { 2 3 public st

从小工到专家 ——读《Java程序员职场全攻略》有感

从小工到专家 ——读<Java程序员职场全攻略>有感   <Java程序员职场全攻略>是以故事的形式,向读者介绍Java程序员的职场经验.作者牛开复在北京从事软件开发,已经是一位业界高人,而书中的主人公蔡佳佳则是一名计算机专业的大三学生,作为师兄的牛开复一步一步指引蔡佳佳从学校走入职场,开始他的职业生涯.书中多采用二人对话的形式,谈到了职场中可能会遇到的各种问题,语言形式也非常轻松活泼,生动有趣,通俗易懂. 初窥门径——行业揭秘 相信很多同学都急切的想了解IT这个行业在国内的现状以

小读&lt;程序员的呐喊&gt;

世界杯期间,花了几个小时读完了这本<程序员的呐喊>. 个人感觉,这书名该叫做<"你可以拒绝"----一个程序员的咆哮>. 这本书最大的看点是体会喷子如何把喷演变成一种艺术. 虽然Yegge大部分时候都在喷,但是不可否认他的观察力确实很敏锐: 比如对C++的分类(愚钝的语言,温和的保守派),比如对"坏"敏捷的批判(一种营销,日程表的暴政),比如对JAVA代码膨胀的鄙视(代码的天敌) 当然,作为一本能出版的书,还是得有些建设性才行. 所以收录了作

读程序,回答问题

阅读下面程序,请回答如下问题: 问题1:这个程序要找的是符合什么条件的数? 问题2:这样的数存在么?符合这一条件的最小的数是什么? 问题3:在电脑上运行这一程序,你估计多长时间才能输出第一个结果?时间精确到分钟(电脑:单核CPU 4.0G Hz,内存和硬盘等资源充足). 问题4:在多核电脑上如何提高这一程序的运行效率? (注:该程序.用C#语言编写,但是只要有C语言基础完全没有阅读压力,如果对部分语句不懂请自行查询) 要求:将上述问题结果写到博客上. using System; using Sy

读程序

老师说学会写程序首先要先读懂别人的程序,这次就老师给我们留了一个读程序的作业.程序是用c#写的,以前没有接触过c#,但和c语言差不多,基本能读懂. 程序如下: using System; using System.Collections.Generic; using System.Text; namespace FindTheNumber { class Program { static void Main(string[] args) { int [] rg = {2,3,4,5,6,7,8,