Nasm是Netwide Assembler,一个开源的x86 / x64汇编程序。它旨在实现可移植,模块化和简单的语法。
汇编 x86-64 位 shellcode 不运行 execve 系统调用
我是编写汇编代码/shellcode 的新手。 我的 shellcode 应该通过带有参数数组的系统调用 execve 生成 shell。 当我运行编译后的 shellcode 时,它似乎可以工作,我得到了我的用户......
64x Windows 程序集中的 Int 到字符串(nasm)
我正在尝试将整数转换为字符串,然后使用 MessageBoxA 函数显示它。如果数字是 xero 则成功,但任何其他正整数都显示为 blan...
我正在使用 NASM 学习基本汇编,并偶然发现了两个数字的 div 中的问题。 这是我写的代码: .data 节 msg1 db "输入第一位数字 (a): ", 0 len1 等于 $...
glibc scanf 从未对齐 RSP 的函数调用时出现分段错误
编译以下代码时: 全球主要 外部 printf、scanf .data 节 msg: db "请输入数字:",10,0 格式:db“%d”,0 .bss 节 编号 RESB 4 节.文本 主要的: mov rdi,女士...
在编译我的汇编代码时,我遇到一个问题,当我编译为 64 位而不是 32 位时,我收到错误: 链接:错误 LNK2001:无法解析的外部符号 main hello.obj:错误 LN...
我遇到了一个makefile问题。惠特海湾合作委员会。 gcc -m32 -nostdlib -nodefaultlibs -lgcc start.o kernel.o -T linker.ld -omyos /usr/bin/ld:跳过不兼容的 /usr/lib/gcc/x86_64-linux-gnu/11/libgc...
我有一个问题,我想知道是否可以使用汇编程序设置Linux进程的处理器核心亲和力。我正在使用 nasm 进行组装。创建进程时出现中断,但我...
使用 ASCII 数字字符串时从 100 减 1 的结果不正确
节.bss 编号:resb 3 节.文本 全局_start _开始: ;读取输入 移动 eax, 3 移动 ebx, 0 mov ecx, 数字 移动edx,3 80小时内 子字节 [num+2], 1 cmp 字节 [num+2], 255 jneskip_b...
在 Windows x64 程序集中,如何访问函数的 8 字节整数参数?
我正在开发一个将从 C 程序调用的汇编函数。 我的设置: x64CPU 视窗11 NASM(依赖于 Intel 语法) nasm -f win64 我的问题是:假设函数 exp...
我想获取 n 并定义两个 n*n 矩阵,然后将它们作为输入,然后将它们相乘,但我不知道如何获取两个矩阵作为输入。 .data 节 输入格式:db“%d”,0...
我想获取 n 并定义两个 n*n 矩阵,然后将它们作为输入,然后将它们相乘,但我不知道如何获取两个矩阵作为输入 .data 节 输入格式:数据库“%d”,0 编号:dd 1
我有一个 2 阶段引导加载程序和一个 C 内核函数。问题是它没有进入第二阶段或内核。我在第一阶段和第二阶段都进行了char测试,以便通过ou测试...
编辑: 我接受了下面的答案,并添加了我自己的代码的最终修订版。希望它向人们展示影子空间分配的实际示例,而不是更多的文字。 编辑 2...
全球主线 .data 节 msgeven db "数字中偶数位的总和为:",0 总和 db 0 UC 数据库 0 数据库0 编号 db 234 节.文本 主要的: mov ax,[数字] _计算总和: cmp 斧头,'0' 我
错误的库在手动生成的 PE 64 位可执行文件中加载错误的函数
我有 64 位手动生成的 PE 可执行文件。我需要加载两个库kernel32.dll和user.dll。它给出了第一个错误。 如果我只有一个库(这将是 kernel32.dll),我会得到...
节.data var: db '你好世界', 10 节.文本 _开始: 移动拉克斯, 1 莫夫RDI,1 mov rsi, var 移动rdx,11 系统调用 莫夫拉克斯,60 xo...
假设我在 NASM 中有一个这样的结构 结构体MyStruct .a 请求 1 .b 要求 1 .c 响应 1 恩斯特鲁克 我可以使用 C 中的什么声明来通过 MyStruct.c 访问 MyStruct.a? C 不允许这样做...
我想将“hello world”传递给保留的“teste”,但它只读取传递的字符串的第一个字符。 .bss 节 测试RESB 1024 节.文本 全球主要 ...
我试图在 NASM 中创建一个套接字,但没有任何反应,而在 C 中一切正常。 我的C代码: #包括 #include“personalUtils.h” int main() { int fd = 套接字(
我试图在 NASM 中创建一个套接字,但没有任何反应,而在 C 中一切正常。 我的C代码: #包括 #include“personalUtils.h” int main() { int fd = 套接字(