首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >需要帮助理解编译器/HLL->程序集

需要帮助理解编译器/HLL->程序集
EN

Stack Overflow用户
提问于 2009-04-01 19:55:26
回答 4查看 538关注 0票数 0

我是一名电子专业的学生,我主要是在装配中编程。昨晚,我看到了一篇关于用Ruby编写编译器的精彩文章。作者所做的就是用GCC来窥探C是如何翻译成大会的。这让我产生了很多共鸣。我终于可以看到C程序是如何向社区翻译成Assembly.My问题/请求的:您能向我展示更好地讨论这两者之间联系的资源吗?我应该读关于编译器的文章吗?我应该学习系统编程吗?我不知道该怎么办。我真的想更好的编程,并更好地学习这一点。谢谢你的帮助。

相关信息:

其他人..。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2009-04-01 20:13:52

这里确实发生了几件事。首先要看的是类似于编译器的书。有几个老的,像著名的龙书,是非常好的。我今天刚在如何编写伟大的代码上发现了另一个,通过同一个人写的如何编写伟大的代码。到目前为止,我只读过示例章节,但它看上去非常好,而且似乎只是解决了您想要的内容,而没有立即进入LALR(1)语法等等的奇迹。

“系统编程”更多的是关于编程系统。在系统编程ouse中,您将了解如何使用各种系统调用和其他东西来构建有用的程序。你也需要知道这一点,但这与“它是如何发生的”是不同的。

像aaronis所指的计算机组织手册,更多地是关于程序如何从汇编语言级别到实际的门之类的。它也被称为“计算机架构”,因为Amdahl、Blaauw和Brooks发明了这个术语:指令集,它们是如何实现的,以及如何在设计中进行量化选择。

票数 5
EN

Stack Overflow用户

发布于 2009-04-01 20:14:36

在编译器的经典参考文本是Aho和Ullman,原则的编译器设计,也就是龙的书。目前的版本有更多的作者和更新的标题.

编译器:原则、技术和工具

票数 3
EN

Stack Overflow用户

发布于 2009-04-01 20:02:36

当我参加计算机组织课程时,他们详细介绍了处理器是如何发展的,如何处理指令,以及程序集是如何转换成机器代码的。也许比你想要的要低一点,但是我认为从高级语言到低级语言的这种翻译是多么的简单。我想我们用了这本书或者一本类似的书:http://www.amazon.com/Computer-Organization-Design-Interface-Architecture/dp/1558606041

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/708231

复制
相关文章
ScintillaNET 需要帮助
Scintilla是一个免费的源代码编辑控件,它完全开放源代码,并且提供一个license允许用户自由地将它用在开源软件或是商业软件中。作为源代码编辑控件,我们能在普通的的文本编辑控件中能看到的功能,Scintilla都完全能够实现,而且,它还能够提供很多编辑和调试源代码时有用的特殊功能。包括语法高亮显示,错误指示,代码自动完成以及代码提示等。而且在左边的空白处(margin),可以显示调试代码中非常有用的显示断点以及显示当前运行行等功能。而且,自定义风格的功能比其他大部分编辑器控件都开放,它允许用户自定
张善友
2018/01/22
1.5K0
dotnet 通过引用 msbuild 程序集实现自己定制编译器
本来我想说的是基于引用 msbuild 程序集来自己做一个编译器,但是想想好像本文做的,和造编译器没啥关系,咱自己调用 msbuild 的 API 而已。本文来告诉大家如何引用 msbuild 程序集,如何在自己的应用程序里面嵌入 msbuild 的构建代码,实现 dotnet build 的效果
林德熙
2021/12/24
7610
Go 语言编译器帮助你做类型检查
为了进一步明确并发安全字典中键值的实际类型,这里大致有两种方案可选。第一种方案是,让并发安全字典只能存储某个特定类型的键。比如,指定这里的键只能是int类型的,或者只能是字符串,又或是某类结构体。遴选真题一旦完全确定了键的类型,你就可以在进行存、取、删操作的时候,使用类型断言表达式去对键的类型做检查了。
用户7737280
2021/11/27
5010
上帝视角:程序员为什么需要理解 CPU?
最近陆陆续续写了几篇关于CPU的文章,可能有的同学会问,程序员写代码就好了,为什么需要去理解CPU啊?不嫌累啊?啊?啊?你倒是说啊。
abs_zero
2021/07/05
4430
为什么你需要编程assignment指导帮助?
计算机编程一直都不是一个简单的领域,即使是对于那些痴迷于计算机编程的同学,乃至大神们,也很难掌握所有的理论和概念。但是,教授、讲师们不可能延长课时,让同学们有充分时间去领悟其中的精髓,甚至是精通计算机编程。 那有什么办法可以让同学们熟练掌握计算机编程呢?7*24的图书馆学习吗?当然不是!俗话说的好,“火车跑得快,全靠车头带”,同学们需要的是一名专业的工程师,在前方带领大家。
拓端
2022/10/24
3780
为什么你需要编程assignment指导帮助?
计算机编程一直都不是一个简单的领域,即使是对于那些痴迷于计算机编程的同学,乃至大神们,也很难掌握所有的理论和概念。但是,教授、讲师们不可能延长课时,让同学们有充分时间去领悟其中的精髓,甚至是精通计算机编程。 那有什么办法可以让同学们熟练掌握计算机编程呢?7*24的图书馆学习吗?当然不是!俗话说的好,“火车跑得快,全靠车头带”,同学们需要的是一名专业的工程师,在前方带领大家。
拓端
2022/10/25
3760
利用 AI 作图帮助理解知识
人类对图形的接受和处理能力高于对文字和数字的处理能力。 如果我们学习某个知识的时候,能够找到配套的图,理解会好很多。 但,并不是所有的知识都有配图。
明明如月学长
2023/07/10
2140
利用 AI 作图帮助理解知识
五、CLR加载程序集代码时,JIT编译器对性能的产生的影响
1、CLR首次加载代码造成的性能损失      四、CLR执行程序集中代码介绍了CLR在首次执行一个类的时,会初始化一个内部结构,然后当目标方法被首次调用时,JITComplier函数(JIT编译器)会验证IL代码并将IL代码编译成本地CPU指令并存储到动态内存中,这意味着一旦应用程序终止,编译好的代码也会被丢弃,所以,当再次运行应用程序,或者同时启动应用程序的两个实例(使用两个不同的操作系统的进程),JIT编译器必须再次将IL编译成本机指令.对于某些应用程序,这可能会增加内存的负担. 相比之下,本机(n
郑小超.
2018/03/29
9550
五、CLR加载程序集代码时,JIT编译器对性能的产生的影响
训练集、验证集、测试集以及交验验证的理解
在人工智能机器学习中,很容易将“验证集”与“测试集”,“交叉验证”混淆。
全栈程序员站长
2022/08/27
19K0
训练集、验证集、测试集以及交验验证的理解
理解MySql字符集
常用的编码格式为:ASCII Unicode-8 Unicode-16 Unicode-32 GB2312 等 ,
用户1175783
2019/09/18
2K0
二、源代码=>程序集及程序集概念介绍
文本脉络图如下: 一、源代码-面向CLR的编译器-托管模块-(元数据&IL代码)中介绍了编译器将源文件编译成托管模块(中间语言和元数据),本文主要介绍如何将托管模块合并成程序集. 1、程序集的基本概念
郑小超.
2018/01/26
8270
ICLR 2020 | ReClor: 一个需要逻辑推理的阅读理解数据集
语言预训练模型在现有流行的阅读理解数据集上取得了惊人的效果,因此,现在是时候引入更复杂的数据集来推动该领域朝着更复杂推理的方向发展了。
AI科技评论
2020/05/14
1.5K0
ICLR 2020 | ReClor: 一个需要逻辑推理的阅读理解数据集
pycharm怎么编译python_python需要编译器吗
PyCharm编译器有很强大的代码提示功能,业界都说很好用,所以我尝试着安装并使用,以下是过程。
全栈程序员站长
2022/11/15
6270
pycharm怎么编译python_python需要编译器吗
搭建直播教育平台,需要它的“帮助”才行
在搭建直播教育平台这方面,可能绝大多数人都会存在疑惑:是不是找一开发公司购买一套优质的教育直播平台源码就可以了?其实源码对于开发来说,确确实实是非常重要的,而且也是最基础的一部分。但是在此基础之上,还需要更多技术方面的知识和能力,比如我们经常见到的DNS负载均衡。今天就主要分享一下DNS负载均衡方面的知识内容。
万岳教育源码
2020/05/16
1.1K0
搭建直播教育平台,需要它的“帮助”才行
NEO C# 合约编译器原理解析
c#的版本很多,从framework2.0到core2.3版本,语法差异很大,但是底层对应MSIL字节码没有变化,Neo的原理是先使用对应的编译器生成MSIL字节码,再把MSIL字节码转换成NEO vm的code码序列。这样做的好处在与利用了C#现有的语法成果,不必自己在设计一门语言,减少了合约编写的门槛。
魂祭心
2019/03/12
9970
【科技】深度学习可以帮助预测人们何时需要乘车
据国际研究小组称,计算机可以更好地预测出租车和共享服务需求,为更智能、更安全、更可持续的城市铺平道路。 在一项研究中,研究人员使用两种类型的神经网络——以人脑为模型的计算系统和分析出租车需求的模式。这
AiTechYun
2018/03/05
7710
【科技】深度学习可以帮助预测人们何时需要乘车
理解作用域(引擎,编译器,作用域)
作用域:负责收集并维护所有声明的标示符(变量)组成的一系列查询,并实施一套严格的规则,确定当前执行的代码对这些标识符的访问权限。
菜的黑人牙膏
2019/01/21
7780
NLP技术也能帮助程序分析?
众所周知,在机器学习领域中,计算机视觉、自然语言处理和语音识别的技术已经发展的非常成熟,都已经有非常好的效果。同时,在系统安全领域,也有非常多的研究者,正在尝试使用非常大量的数据进行分析,以完成一些人类难以完成的挑战。
SIGAI学习与实践平台
2019/08/06
9590
查找 .Net 程序集
我从观看 .net 程序集被移动和挖空的经验中知道,不会有命令行参数。我的大部分内容都不会触发。但是,现在它的移动对我来说很重要。从过去的工作中,我知道 Windows 上有许多本机 .Net 程序集。有些甚至通过 SDK 或其他开发人员工具进入。本土的可能是最有趣的。我们如何找到它们?
Khan安全团队
2022/01/26
6170
关于深度学习编译器,这些知识你需要知道
近年来,以机器学习、深度学习为核心的AI技术得到迅猛发展,深度神经网络在各行各业得到广泛应用:
AI科技大本营
2021/03/12
1.5K0
关于深度学习编译器,这些知识你需要知道

相似问题

需要帮助理解程序集引用

20

需要帮助理解程序集签名过程

10

需要帮助理解程序集与堆栈的交互

20

需要帮助理解PDO的结果集

24

需要帮助验证程序集代码

12
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文