程序环境的详讲

简介: 在ANSI C的任何一种实现中,存在两个不同的环境>:第1种是翻译环境,在这个环境中源代码被转换为可执行的机器指令.第2种是执行环境,它用于实际执行代码.

目录


一.程序的翻译环境和执行环境


1.翻译环境


(1)翻译环境中分为编译器和链接器


(2)编译中也分为3步


2.执行环境


一.程序的翻译环境和执行环境

在ANSI C的任何一种实现中,存在两个不同的环境>:

第1种是翻译环境,在这个环境中源代码被转换为可执行的机器指令.

第2种是执行环境,它用于实际执行代码.


1.翻译环境

(1)翻译环境中分为编译器和链接器

源代码在翻译环境中生成可执行程序:

编译+链接----->可执行程序 如图:

85f196a079bc1a6b90743bacfde02b2a_055bc8821cc241e1a2c872435294e4ed.png



(2)编译中也分为3步

1.预编译


2.编译


3.汇编


如图:

b708c3773e2a00087273f4a6fce67fe1_3999e2d491094a07b2717fc29c278f88.png

2.执行环境

程序执行的过程:

1. 程序必须载入内存中.在有操作系统的环境中:一般这个由操作系统完成.在独立的环境中, 程序

的载入必须由手工安排, 也可能是通过可执行代码置入只读内存来完成。

2. 程序的执行便开始. 接着便调用main函数.

3. 开始执行程序代码. 这个时候程序将使用一个运行时堆栈(stack), 存储函数的局部变量和返回

地址。程序同时也可以使用静态(static)内存,存储于静态内存中的变量在程序的整个执行过程

一直保留他们的值.

4. 终止程序.正常终止main函数;也有可能是意外终止


目录
相关文章
|
4月前
|
数据库连接 数据库 Python
Python 大神教你一招鲜:自定义上下文管理器,让资源管理变得如此轻松惬意🍵
【7月更文挑战第3天】在Python中,自定义上下文管理器是高效资源管理的关键,它们确保了如文件和数据库连接等资源的正确打开和关闭。通过`__enter__`和`__exit__`方法,可以创建简洁的代码,避免冗余的异常处理。例如,自定义的`DatabaseConnectionManager`和`FileManager`类使得数据库操作和文件读取更整洁,使用`with`语句自动处理资源生命周期,提升代码可读性和可靠性。
44 0
|
6月前
|
Swift iOS开发 C++
设置Swift开发环境
设置Swift开发环境
72 1
|
6月前
|
JSON 开发工具 数据格式
基于Python开发的开心麻花影视作品分析系统(源码+可执行程序+程序配置说明书+程序使用说明书)
基于Python开发的开心麻花影视作品分析系统(源码+可执行程序+程序配置说明书+程序使用说明书)
|
6月前
|
JSON 定位技术 开发工具
基于Python开发的高德地图+58租房系统(源码+可执行程序+程序配置说明书+程序使用说明书)
基于Python开发的高德地图+58租房系统(源码+可执行程序+程序配置说明书+程序使用说明书)
125 0
|
人工智能 Cloud Native Devops
也许是时候停止编写详细的操作手册了
也许是时候停止编写详细的操作手册了
64 0
|
NoSQL Linux 编译器
操作系统课程设计:新增Linux驱动程序(重制版)(一)
操作系统课程设计:新增Linux驱动程序(重制版)
207 1
操作系统课程设计:新增Linux驱动程序(重制版)(一)
|
Linux Shell
操作系统课程设计:新增Linux驱动程序(重制版)(二)
操作系统课程设计:新增Linux驱动程序(重制版)
148 0
操作系统课程设计:新增Linux驱动程序(重制版)(二)
|
Linux C语言 Windows
操作系统课程设计:新增Linux驱动程序(重制版)(三)
操作系统课程设计:新增Linux驱动程序(重制版)
220 0
操作系统课程设计:新增Linux驱动程序(重制版)(三)
|
存储 Linux C语言
嵌入式Linux C(八)——函数(详)
嵌入式Linux C(八)——函数(详)
194 0
嵌入式Linux C(八)——函数(详)
|
SQL 前端开发 大数据
编程实用工具大全(二)(前后端皆可用,不来看看?)
1.零代码工具箱 - 专为前端打造 1. SVG波浪背景生成器 2.在线生成 新拟态风格 CSS 代码 3.在线生成CSS玻璃形态效果 4.CSS文本排版工具 2. 在线模拟数据生成器-专为后端打造 3.VARBook-适合英语基础薄弱者 4.零代码 - Table在线布局工具(Excel转HTML) 5.随意构建有机外观的形状
编程实用工具大全(二)(前后端皆可用,不来看看?)
下一篇
无影云桌面