汇编中的addr32是什么意思?
我努力弄清楚 addr32 在汇编代码中的意思是什么。例如,我使用GDB追踪二进制。以下是代码的一部分。 adcx %r13,%r13 #! PC = 0x55555557d9fb adox %rc…
同一X64指令的多个编码有什么区别?
我正在使用 miasm 框架进行一些实验。考虑下面的摘要,在其中我拆卸并重新组装 lea rax的字节码,[RIP + 1] : from miasm.analysis.machine import M…
8086指令集:MODR/M BYTE
当提到MODR/M BYTE时,8086的文档网站似乎有些模糊,并且很难理解它是什么和做什么。 MODR/M BYTE中使用的所有位是什么?可能的选项是什么? 我发现了…
通过大会说明了解向登记册的地址分配
如果我有具有以下特征的CPU/系统... 16位体系结构(16位寄存器和总线) 8总寄存器 一组64个汇编指令 ,并假设我的汇编指令遵循该格式... OPCode (6 bi…
MOV的HEX机器代码立即到64位寄存器没有REX.W前缀吗?
我有此代码,说 global main [BITS 64] section .text main: mov r13, 0x1234 mov rax, 60 mov rdi, 0 syscall 当我手动翻译此指令 MOV R13,0x1234 …
如果JavaScript代码按行执行,则AST(抽象语法树)的工作方式?
JavaScript是一种解释的语言,逐行执行代码。另一方面,JavaScript引擎内的AST(抽象语法树)创建了整个代码的数据结构,并将其转换为机器代码。那么…
LEA 是否在负标度下有效,或者 SUB 是否在标度寄存器上有效?
我有两个寄存器像这样映射到变量 %rdi = x, %rsi = y 我想让 y = y - 4x 我的试验是这样的。我减去 x 四次得到 y - 4x。 subq %rdi, %rsi # y = y - x…
计算机究竟是如何将 ASCII 转换为二进制的?
我已经读到,当您按键盘上的键时,操作系统会将其转换为相应的ASCII,然后计算机将ACII转换为二进制。但是,计算机的哪一部分将ASCII转换为二进制?这…
如何在C中执行AARCH64生成的计算机代码
我看到并尝试了一些在 Linux 上用 C 执行机器代码的示例。效果很好。 当我尝试使用 aarch64 时,它总是失败。这是我尝试过的。 C 文件: #include #in…
机器代码可执行文件是否可以将其转换为其他操作系统和架构?
Closed. This question needs to be more focused. It is not currently accepting answers. 想要改进这个问题吗?通过编辑这篇文章来更新问题,使其…