x86-64 相关问题

x86-64是Intel x86架构的64位扩展

msfvenom shellcode 实际上如何执行 execve sh -c ls

MOV RAX,0x68732f6e69622f 干熄焦 推拉克斯 推动RSP POP RDI 推RDX 推0x632d 推动RSP 流行指数 推RDX CALL FUN_0000001e INSB RDI、DX JNC FUN_0000001e FUN_0000001e: 脓...

回答 1 投票 0

msfvenom shellcode 实际上是如何工作的

MOV RAX,0x68732f6e69622f 干熄焦 推拉克斯 推动RSP POP RDI 推RDX 推0x632d 推动RSP 流行指数 推RDX CALL FUN_0000001e INSB RDI、DX JNC FUN_0000001e FUN_0000001e: 脓...

回答 1 投票 0

无法在程序集中索引数组

我一直在尝试学习一些汇编并测试数组,发现当我尝试打印出索引点处的值时没有发生任何事情,经过进一步实验后,它似乎...

回答 1 投票 0

VIPT 缓存中别名的性能影响

VIPT 缓存中的虚拟地址同义词(别名)对性能有何影响?我对最近的 x86_64 架构特别感兴趣,但了解更多其他架构也没什么坏处。

回答 1 投票 0

为什么我们在 x86 上将 64 位无符号整数转换为 32 位浮点数时要设置最低有效位?

#包括 浮点转换(size_t sz){return sz;} 使用 -mavx2 -O3 在 Clang 13.0.1 上编译上述代码会生成以下代码: 强制转换(无符号长整型):# @

回答 1 投票 0

为什么我们在将 64 位整数转换为 32 位浮点数时要设置最低有效位

#包括 浮点转换(size_t sz){return sz;} 使用 -mavx2 -O3 在 Clang 13.0.1 上编译上述代码会生成以下代码: 强制转换(无符号长整型):# @

回答 1 投票 0

如何在汇编中使用 printf 打印命令行参数?

我正在尝试将第一个参数打印到我的 64 位 NASM 程序。我遇到分段错误(核心已转储)。 ; L26.asm .data 节 fmt 数据库 '%s', 10, 0 节.文本 全球主要 分机...

回答 1 投票 0

使用 RDRAND 指令确保在一定范围内生成无偏数字

正在进行代码高尔夫挑战,需要使用 RDRAND 硬件随机数生成器。 例子 将 r12 设置为随机数 [0,255] 兰德斧 movzx r12,al 将 r8 设置为随机数 [0,1]

回答 1 投票 0

定义标签的顺序重要吗?

我试图在汇编中创建一个简单的链表,但我意识到,如果我更改定义标签的顺序,代码将不会显示正确的结果。所以我在想,是不是...

回答 1 投票 0

汇编 x86-64 位 shellcode 不运行 execve 系统调用

我是编写汇编代码/shellcode 的新手。 我的 shellcode 应该通过带有参数数组的系统调用 execve 生成 shell。 当我运行编译后的 shellcode 时,它似乎可以工作,我得到了我的用户......

回答 1 投票 0

glibc scanf 从未对齐 RSP 的函数调用时出现分段错误

编译以下代码时: 全球主要 外部 printf、scanf .data 节 msg: db "请输入数字:",10,0 格式:db“%d”,0 .bss 节 编号 RESB 4 节.文本 主要的: mov rdi,女士...

回答 2 投票 0

如何查找kernel32.dll和api-ms-win-core-memory-l1-1-0.dll源代码

我试图找到不同windows.h函数的源代码,但我似乎找不到任何东西。我要使用的主要是 WriteProcessMemory() 和 CreateRemoteThread()。 我第一次尝试

回答 1 投票 0

docker buildx 禁用多平台并行构建

我有一个 docker 构建,在构建过程中需要运行服务器进行一些管理配置。通过运行服务器,它会声明一个端口,并且在多平台构建过程中,这会与 docker 发生冲突

回答 3 投票 0

如何获取我的Linux系统支持的系统调用的完整列表? [重复]

我使用的是 Ubuntu 22.04 x86_64,我想知道我的系统上可用的所有系统调用的完整列表及其编号。

回答 1 投票 0

Ubuntu 20.04 Windriver Workbench“java.lang.UnsatisfiedLinkError”错误

我正在 Linux 服务器上工作,我从另一台服务器(使用 scp)使用 Windriver 获取了一个目录。 同样的过程在另一台服务器上也有效。 当我运行它时,会出现 GUI,当我选择 wor...

回答 1 投票 0

为什么 GCC 再次使用 movzbl 对已经零扩展的寄存器进行零扩展?

我想知道为什么这段代码: size_t hash_word(const char* c, size_t 大小) { size_t 哈希 = uchar(c[0]); 哈希 ^= uchar(c[大小 - 1]); 哈希 ^= uchar(c[大小 - 2]); 返回哈希值; } 当

回答 1 投票 0

为什么要使用第二个 movzbl 进行编译?

我想知道为什么这段代码: size_t hash_word(const char* c, size_t 大小) { size_t 哈希 = uchar(c[0]); 哈希 ^= uchar(c[大小 - 1]); 哈希 ^= uchar(c[大小 - 2]); 返回哈希值; } 当

回答 1 投票 0

如何避免汇编中函数调用的无限循环?

我正在为64位模式下的x86-64微处理器编写一个汇编程序,该程序在循环中调用函数f 5次,然后在循环中调用puts 3次以显示“hello” 世界”....

回答 1 投票 0

尝试从用户那里获取两个数字,并将它们保留在堆栈中并在汇编中从堆栈中打印它们

我一直在尝试用汇编语言编写一个程序,其中我得到两个数字,稍后我将它们作为字符传递,将它们保存在堆栈中,然后将它们一一取出并打印它们。 我明白了

回答 1 投票 0

最小的可执行程序(x86-64 Linux)

我最近看到这篇文章,描述了 Linux 的最小可能的 ELF 可执行文件,但是这篇文章是为 32 位编写的,我无法获得在我的机器上编译的最终版本。

回答 2 投票 0

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