首页 > 编程语言 >《程序是怎样跑起来的》第八章读后感

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

时间:2024-02-21 10:59:09浏览次数:21  
标签:可执行文件 读后感 EXE 程序 第八章 源文件 编译器 源代码 链接

第八章主要讲的是从源文件到可执行文件,编写好源文件之后,对源文件进行编译和链接,就可以生成可执行文件了,编译和链接的操作需要使用编译器和链接器来完成。这一章中,作者把重点放在了编译器和链接器的功能上,向我们介绍了程序从编写到运行的整个过程。
首先我们看到的是源文件是如何转变成可执行文件的,源文件是将源代码保存成一个文件,而源代码是用某种编程语言编写的程序,负责翻译源代码的叫做编译器,用不同的编程语言编写的源代码,需要使用该源专用的编译器来进行编译,而编译器本身也是一种程序,因此,也有其对应的运行环境,而仅靠编译无法得到可执行文件,作为源代码的翻译,结果编译器生成的是包含本机代码的文件,但这个文件不能直接运行,要得到可执行的EXE文件,在编译之后还需要进行链接操作
下面就是,运行可执行文件需要什么?在EXE文件中,变量和函数被分配的内存地址都是虚拟的,在程序运行时,这些虚拟的内存地址会转换成实际的内存地址,链接器会在EXE文件的开头记录需要进行内存地址转换的各个位置。这些信息被统称为重定位信息中记录的是变量和函数的相对地址,而EXE文件的内容被分为重定位信息变量区和函数区,但是在加载程序的内存空间中,还会生成另外两个区域,就是栈和堆,栈和堆都是在程序运行时分配的内存空间

标签:可执行文件,读后感,EXE,程序,第八章,源文件,编译器,源代码,链接
From: https://www.cnblogs.com/XIEJIAJIA0812/p/18023481

相关文章

  • [转]多端统一框架Taro基础教程(支持转小程序/React Native(安卓/iOS)/鸿蒙)
    原文地址:多端统一框架Taro基础教程-知乎随着微信小程序越来越火,其它平台也都推出了自己的小程序产品(支付宝、快应用、百度、抖音)。小程序最大的特点就是平台能为你提供强大的流量,所以小程序开发变成了前端必会知识。作为一个从来不想写程序,一心只想泡妹子的程序员,我一直期盼......
  • 读程序是怎样跑起来的第十章有感
    第十章,为我们讲述了通过汇编语言来解析程序结构的方法。首先,我们知道了汇编语言与本地代码是一一对应的,把汇编语言转换为本地代码,就好像数学中三角函数中的度数和值一样。程序的构成,程序就是一个指令系列。计算机程序是一组计算机能识别和执行的指令。运行与电子计算机上,满足人们......
  • 读程序是怎样跑起来的第十一章有感
    书中首先介绍了CPU的内部结构,如寄存器、程序计数器等,它们是CPU的核心部分,确保指令能够被正确执行。接着,详细解释了CPU如何与内存进行数据交换,这一过程看似简单,实则包含了大量的细节与原理。值得一提的是,书中对于硬件控制方法的讲解,特别是对输入输出指令IN和OUT的描述,让我感受到了......
  • 程序的运行环境
       运行环境等于操作系统加硬件,也就是说操作系统和硬件决定了程序的运行环境。同一类型的硬件可以选择安装多种操作系统。若从程序的运行环境这一角度来考量硬件时,CPU的种类是特别重要的参数,由此我们可以知道CPU的种类有很多且只能解释其自身固有的机器语言,而且CPU负责解析并......
  • 《程序是怎样跑起来的》第六章读后感
    我深入阅读了《程序是怎样跑起来的》的第六章。这一章节为我揭示了程序运行过程中的重要环节和原理,让我对计算机程序的执行有了更深刻的理解。首先,本章强调了程序与数据结构的紧密联系。一个好的数据结构可以大大提高程序的运行效率,而一个糟糕的数据结构则可能导致程序运行缓慢甚......
  • C++多线程 第八章 设计并发代码
    第八章设计并发代码数据划分工作在处理开始前在线程间划分数据方面,C++与MPI或OpenMP的方式较为相似.一个任务被分成一个并行任务集,工作的线程独立运行这些任务.并且在最后的化简步骤中合并这些结果.尽管这种方法是很有效的,但是只有在数据可以实现划分时,才可如此.考虑这......
  • 对于可执行文件的产生和运行过程的认知(《程序时怎样跑起来的》第8章)
    在阅读《程序时怎样跑起来的》第八章后,我认识到了源文件变为可执行文件的过程,包括必备的因素和运行的条件。源文件指的是程序员利用高级语言写的代码文件,而在第七章中提到,CPU能识别的是本地代码也叫机器语言,而源文件到本地代码的过程就叫做“编译”,通常利用对应语言的编译器进行编......
  • 《程序是怎样跑起来的》第四章读后感
    《程序是怎样跑起来的》第四章的内容主要讲的是熟悉使用有棱有角的内存。读了第四章内容,我学到了内存的物理机制是什么,内存的逻辑模型,数组等知识。内存实际上是一种名为内存IC的电子元件。虽然内存IC包括DRAM、SRAM、ROM”等多种形式,但从外部来看,其基本机制都是一样的。内存IC中......
  • 《程序是怎样跑起来的》第七章:程序在何种环境中运行
    这一章深入浅出地解析了操作系统、硬件、编译器等重要元素,以及它们如何协同工作以支持程序的运行。在程序运行的大环境中,操作系统无疑扮演着关键的角色。它不仅管理着硬件资源,如CPU、内存和存储,还负责提供一种机制使得多个程序能够安全、有效地共享这些资源。通过操作系统,程序可以......
  • 《程序是怎样跑起来的》第八章:从源文件到可执行文件
    在这一章中,作者详细地解释了如何将源代码转化为可执行文件,这个看似简单的讨程实际上包含了多个复杂的步骤。源代码,作为程序的起点,虽然已经包含了实现特定功能的代码,但它本身并不能直接运行。为了让它能在计算机上运行,需要经过一系列的编译和链接过程。这包括词法分析、语法分析、......