机器代码是直接馈入微处理器的数据,是处理器能够执行的唯一形式。它是可能的最低抽象级别,其中所有数据都是原始二进制流。机器代码几乎不可被人类读取,这就是通常使用装配的原因。
考虑到C是一种系统编程语言,我如何将C代码编译成可以在没有操作系统的情况下调用的原始x86机器代码? (IE:你可以假设我有......
我是汇编语言的初学者。 我正在使用“easy 68k editor/assembler”编写68k汇编代码,要求用户提供2个值,然后将它们加在一起并显示它。
我们在大学学习编译器,所以这引起了我的好奇心,当我们使用编译器并且它们形成程序集时,你有什么方法可以知道,如果给你任何exe,wh...
我想为玛丽编写一个汇编程序,但是我一开始就陷入困境。我的机器代码必须具有以下格式:FFFF“第一个地址”“最后一个地址”“...命令” 假设我们有一个
我很好奇cout函数是如何编写的,我应该在哪里寻找它? 我的第二个问题是,我真的可以剖析该语言的每个组成部分以理解它吗? 例如...
Windows API SetThreadContext 未设置 EFlags 进位标志
我尝试在 Windows 上运行机器代码以进行测试, 我有一个工作原型,唯一不工作的是 EFlags SetThreadContext 似乎没有正确地将 EFlags 应用于线程, 如果我
需要在 simpletron 机器语言代码中制作一个计数到 10 的 for 循环
需要帮助制作 for 循环,我所拥有的是粘贴到我的 Linux 终端中运行 simpleton 的 C++ 源代码。 // 练习 8.16 解决方案:ex08_16.cpp - Simpletron 模拟器。 // simpletron.cpp // g++
下面是 objdump -D 输出: 80730: d401e1e1 服务#0x0f0f 第一列是地址,第二列是机器代码,最后一列是指令。 我知道SVC操作码代码是0xd4,但是为什么0x0f0f变成了
一条MOV指令占用内存多少字节?如果使用 4 字节地址,其中 1 字节用于移动命令本身,那么所有 40 位如何存储在内存中? 从这个网站,https://www.c...
我想知道由于高级编程语言(这里我认为 C 和 C++ 是高级语言),我们当前的硬件有多少潜在性能未被使用。 我当然知道...
我想知道由于高级编程语言(这里我认为 C 和 C++ 是高级语言),我们当前的硬件有多少潜在性能未被使用。 我当然知道...
我的问题 我尝试使用 NASM 的 strict 关键字和 -O0 来禁止它将 mov dword [rdi+0], 0xab 转换为 mov dword [rdi], 0xab,但没有成功。我的预感是 +0 会得到
ASM x86(64 位)在 Hello World 中打印额外字节
预期输出是Hello World,但结果类似于Hello Worldhi。可能是len变量的问题。我在 x86_32 方面有一点经验,并且正在转向 x86...
假设以下源文件(翻译单位;TU): 结构体 X { 整数我; X(常量X&); X(X&&); }; X::X(const X&) = 默认值; X::X(X&&) = 默认值 如果我比较...
为什么退出代码是这样的以及为什么调用的第一个字节是 0x0000 然后是“printf”
我目前正在反转最小的pe文件。这是我分析的: 程序打印*268b通用微型PE 并返回退出代码 26(这是字符串长度) (1): Magic DOS 签名...
我的一个朋友得到了 8080 汇编代码,作为他试图解决的难题的一部分。 这是代码: 3E 02 4F C6 04 47 11 41 01 21 69 00 19 号 76 他需要 B、DE、C 和 HL 的值 可以吗...
我被要求将以下机器代码转换为英特尔语法的汇编代码: 0x421a0770:0D 00 3D 77 0x421a0774:交流3D 11 2A 0x421a0778: 96 AB 77 04 0x421a077c:90 2D 0...
来自高级编程背景,我对学习低级编程很感兴趣。我想知道编译器是如何编译的? 在查看了 wiki 中的一些文章后,Numerical
我想查看目标代码以获取某些指令以更好地理解它们。我对 modRM 字节的理解是,它对于寄存器到寄存器操作码 8A(8 位)很有用,因为我...
我正在 VisualboyAdvance 上的 Z80 中进行一些编码,但我不知道如何执行任何类型的 IF 语句。 我编写了一个脚本来增加屏幕上从 0xC3A0 开始的每个图块的值。屏幕...