首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >程序集db占用一个字节,但在我的机器上它占用4个字节?

问程序集db占用一个字节,但在我的机器上它占用4个字节?
EN

Stack Overflow用户
提问于 2015-01-12 23:05:32
回答 2查看 92关注 0票数 0

我在网上学习了一个教程,其中一个家伙用一个平面汇编程序从零开始创建了一个操作系统。他展示了它是如何完成的,当我跟踪他时,我意识到当他用他的十六进制编辑器检查他的程序集时,它显示他的程序集"db 1“在他的十六进制编辑器中看起来像"01”,它只占一个字节;但是当我尝试得到"64 62 20 31“,其中64 = "d",62 = "b",20 =空空间,和31 =那个字节。

我在windows vista上运行,他看起来在Linux上运行,但从未说过,所以我想知道这是否与此有关,我是否可以像他那样在我的机器上创建一个字节呢?对于我来说,如果有不同的方法来做的话,拥有额外的字节对我来说是非常浪费的。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-01-13 01:12:57

.asm文件是一个文本文件,用作一个名为汇编程序的程序的输入。汇编程序的例子包括gas和nasm。

汇编程序生成一个输出文件,该输出文件包含与.asm文件中指定的程序和数据相对应的所有机器代码字节。当将代码加载到内存中的正确位置时,处理器可以直接执行该文件中的代码。

您查看的是程序的源代码,而不是生成的输出文件。

票数 0
EN

Stack Overflow用户

发布于 2015-01-12 23:09:23

您可能指的是程序集,在这种情况下,指令是db 1。

然而,该指令的实际组装可能产生简单的01。

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

https://stackoverflow.com/questions/27912282

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档