Questions tagged «assembly»

汇编语言是用于计算机,微控制器或其他可编程设备的低级编程语言,其中每个语句对应于一条机器代码指令。

1
红色区域的目的是什么?
红色区域是内存中超出“未分配”堆栈指针的固定大小区域。编译器确实会生成汇编程序,以通过简单的叶函数访问该区域。 但是我看不出红色区域有任何真正的优势。在堆栈指针之外访问内存确实很危险,并且很容易导致数据损坏。为什么还要这样做?保存2条处理器指令(push ebp; mov ebp esp)不会真正提高速度。
12 assembly  stack 

12
汇编作为第一门编程语言?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 4年前关闭。 已锁定。该问题及其答案被锁定,因为该问题是题外话,但具有历史意义。它目前不接受新的答案或互动。 您认为教人们将汇编语言(某种变体)作为第一门编程语言有多么出色的主意?与学习Java或Python相比,这将花费更多的精力,但是从“第一天编程”(至少与许多高级语言相比)开始,人们或多或少会对机器有很好的了解。你怎么看?至少对于那些愿意付出额外努力的人来说,这是一个现实的想法吗?的优点和缺点? 注意:我不是老师,只是好奇

2
某些NOP代码是否与其他代码不同?
我对此很好奇,可以说我有: 00000000001 90 nop 00000000002 90 nop 00000000003 90 nop 它执行的方式与此完全一样吗? 00000000001 0F1F00 nop dword [ds:rax] 与第一个例子相比,第二个例子会产生什么影响?
12 assembly 

5
学习汇编程序-有用的资源[关闭]
按照目前的情况,这个问题并不适合我们的问答形式。我们希望答案得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 7年前关闭。 在上一个线程之后,它使我对学习汇编编程有所兴趣。并不是想对有用的应用程序进行编程,仅仅是为了获得低级编程的感觉,从而更好地了解正在发生的事情。 有人可以为初学者推荐任何书籍或在线资源吗? 谢谢。
10 books  assembly 

2
Apollo-11:使用包含替代链接器
最近被数字化并转换为仓库,原始的Apollo 11指导计算机源代码已可以在Github上查看。 在MAIN.agc中,回购作者评论说他们 将巨大的整体源代码拆分为更小,更易于管理的块,即单独的源文件。 稍后,作者指出 可能会合理地问,为什么要通过包含的方式连接成千上万行源代码,而不是简单地单独组装源文件,然后将它们链接以形成可执行文件。答案是原始的开发团队没有链接器。 我知道链接器是什么,我理解它们的意思,但我从未听说过“通过包含的方式加入”(就ASM而言)。 这是什么意思?考虑到链接器在编程中起着很大的作用,我很好奇链接器被“包含方式”替代的含义以及它是如何工作的。

1
为什么GCC默认使用AT&T语法?
我认为标题说明了一切:) GCC使用AT&T / GAS语法有什么特殊的实际原因(我想这主要是历史原因,但我自己找不到)。 注意:我知道这只是默认设置,您可以对其进行切换 注2:我个人认为“英特尔语法”更具可读性,所以这使我感到惊讶。
9 history  assembly  gcc 

2
飞机系统中使用的汇编语言
今天我的讲师提到了用汇编语言对飞机系统进行编程的原因是由于编写的程序出错少。这句话是真的吗?因为当他问我们的意见时,我说过程序集可以创建更快的程序,因此对于面向实时的飞机系统程序来说,这是一种很好的语言。我在Google周围搜索,但似乎找不到一篇澄清讲师陈述的文章。
9 assembly 

6
我应该尝试在组装中练习问题吗?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 4年前关闭。 我当时在看欧拉计划问题48: 系列1 1 + 2 2 + 3 3 + ... + 10 10 = 10405071317。 找到该系列的最后十位数字,1 1 + 2 2 + 3 3 + ... + 1000 1000。 在Python中,我可以单行执行此操作: sum((x**x for x in xrange(1,1001)) 但是,这相当于100条装配线,这确实是一个挑战。 我是否应该在组装中解决这些难题,以便对底层编程有所了解并了解计算机的实际工作原理?
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.