assembly 相关问题

汇编语言(asm)编程问题。请务必使用您正在使用的处理器和/或指令集以及汇编程序。警告:对于.NET程序集,请改用标签[.net-assembly]。对于Java ASM,请改用标签[java-bytecode-asm]。

如何编写跨平台(32和64位)垃圾汇编代码? [关闭]

我需要编写一些(安全使用)随机垃圾汇编代码,以便对C ++项目进行一些混淆练习。到目前为止,我只能找到这个:#define JUNKCODE \ __asm {push eax} \ ...

回答 1 投票 0

写给bl和bh

我试图理解以下行为:mov bl,51;现在在gdb中打印$ ebx返回51 mov bh,52;现在是13363,但我认为这将是5251为什么?我在Intel上使用Linux nasm ...

回答 1 投票 0

如何在PDP-11上的字节和字之间进行异或?

我们遇到的主要问题是一个数字被保存为一个字节,另一个被保存为一个单词,我们意识到PDP-11中有一个内置的XOR。

回答 1 投票 0

为什么ARM使用两条指令来掩盖值?

对于以下函数... uint16_t swap(const uint16_t value){返回值<< 8 |值>> 8; } ...为什么带有-O2的ARM gcc 6.3.0会产生以下程序集?交换(未签名...

回答 4 投票 7

在调用asm函数之前调用printf与否的神秘副作用?

该程序必须以用户提供的准确度计算pi。 calculate_pi()函数是用NASM编写的。有人可以向我解释为什么这条线被评论:// printf(“准确度:%....

回答 1 投票 1

为什么ModR / M:rm字段在mov al中是100,字节ptr [rbx + rsi * 2 + 0x100]?

指令mov al,byte ptr [rbx + rsi * 2 + 0x100]被编码为8a 84 73 00 01 00 00,这意味着ModR / M是0x84或10.000.100我理解mod(10)和reg(000)田地,但不......

回答 1 投票 0

需要完整的虚拟地址空间图片

此图像提供了有关虚拟地址空间的良好图像。但它只说了故事的一半。它仅提供用户地址空间的完整图片,即...降低50%(或在某些情况下为75%)。什么 ...

回答 4 投票 0

使用汇编代码播放音乐

我正在做一个实验室项目,我遇到了一个小问题。我已经写了一些代码来制作音符,这部分似乎有效。我遇到的问题是我处理'm'......

回答 2 投票 3

确定寄存器的值是否等于零的最简单方法是什么?

我正在使用与Irvine库的x86程序集。检查寄存器值是否等于零的最简单方法是什么?我使用cmp指令,但我正在寻找替代方法。这是我的 ...

回答 3 投票 6

通过寄存器传递存储器地址

如何将寄存器中的存储器地址传递给其他寄存器?我的以下例程从堆栈接收字符串内存地址(是的,这是必要的),然后尝试放入D1寄存器,但它不...

回答 1 投票 3

x86在基数2中输入一个数字,并将其作为基数8的数字输出

为了将基数10中的任何数字转换为基数16,一个好的实现将是:段数据use32 class =数据号dd 0 format_input db“%d”,0 format_output db“%x”,0 ...

回答 1 投票 -2

确定三重嵌套延迟循环的运行时间

确定以下子程序的运行时间(以纳秒为单位):延迟:按下r22 ldi r20,0x40 del1:nop ldi r21,0xFF del2:nop ldi r22,0xFF del3:nop ...

回答 2 投票 0

如何准备prolog和epilog汇编来拦截带参数的函数?

我非常精通编程,尤其是C ++,但对于API挂钩和汇编(学习)这个概念仍然很陌生。目前我正在研究DLL代理,与...相比应该相当容易

回答 2 投票 2

Nasm预处理器 - 通过变量的地址参数

我需要写很多推送不同字符的推送指令。我想为此使用一个宏。这就是我到目前为止所做的:%macro push_multi 1- *;在1和∞之间接受......

回答 1 投票 1

这个ASSEMBLY代码中的“b。”是什么意思?

所以我正在研究Redox OS(一个用Rust制作的操作系统)的源代码,看看我是否可以学到一些东西。我正在读取bootloader文件夹中的汇编文件start.s。在里面 ...

回答 1 投票 1

这个x86-64 addq指令是什么意思,它只有一个操作数? (来自CSAPP第3版)

在以下说明中,addq如何工作?它只有一个操作数,书中声称它增加%rdx,但%rdx不在此指令中。我很困惑......这是书中的......

回答 1 投票 3

Fasm在堆栈中声明结构

出于某种原因,我无法正确地将其中的结构放入fasm中。这是问题所在,假设我有这样的结构:struct IMAGE_SECTION_HEADER _Name db IMAGE_SIZEOF_SHORT_NAME dup(?)...

回答 1 投票 1

为什么汇编程序员想要从这个位置减去ebp而不是esp?

关于在x86汇编语言中设置堆栈帧的ebp和esp的使用,我有点混淆。在下面的代码中:section。。code'代码可读的可执行文件; ...

回答 2 投票 1

使用uVision ARM编译器的未知操作码'CBZ'

最近在我的计算机课上,我们已经说过使用uVision ARM编译器。现在,我已经做了很多年java并且了解如何编程但是ARM给了我麻烦。我是...

回答 1 投票 1

是否有更直接的方法将float转换为int而不是添加0.5f并使用截断转换?

在使用浮点数据的C ++代码中,通常使用舍入从float转换为int。例如,一种用途是生成转换表。考虑一下......的片段

回答 2 投票 4

© www.soinside.com 2019 - 2024. All rights reserved.