nasm

为什么从脚本调用的汇编程序在从 crontab 运行时不创建某个文件?
nasm

为什么从脚本调用的汇编程序在从 crontab 运行时不创建某个文件?

我在用着这个脚本构建和打包我开发的一些应用程序。脚本的完整内容列在最后。 它由这个 crontab 条目调用:50 23 * * * nice $HOME/update-dl-wwwecm $HOME | tee -a $HOME/build-dl-wwwecm/log 为了调试,我将脚本复制到测试目录~/test/20211101/t/并对其进行了轻微编辑。 (就像删除脚本末尾硬编码的一些包一样。)我还手动mkdir build-dl-wwwecm在mkdir webrepos此测试目录中并将hg clone以下存储库放入webrepos子目录中: lm...

Admin

如何拆解软盘?
nasm

如何拆解软盘?

我想拆开软盘并用nasm -f bin命令重新组装它。例如,我想反汇编MS-DOS.img文件并用nasm -f bin命令重新组装它。 我尝试使用ndisasm命令: ndisasm -b 16 File.img ...

Admin

-bash: ./ex1: 无法执行二进制文件: Exec 格式错误(在通过 Windows 10 应用商店安装的 Ubuntu 上,64 位)
nasm

-bash: ./ex1: 无法执行二进制文件: Exec 格式错误(在通过 Windows 10 应用商店安装的 Ubuntu 上,64 位)

我试图从一些程序集开始,但我从一开始就遇到了这个错误。以下是详细信息:我自己编写了该文件(在视频之后),因此它不重要: global _start _start: mov eax, 1 mov ebx, 42 int 0x80 非常基本。我组装并链接它( nasm -f elf32 ex1.asm -o ex1.o 其次是 ld -m elf_i386 ex1.o -o ex1 使用 echo $? 检查每个阶段的退出状态)。它组装和链接良好。文件给出...

Admin

使用当前源从 asm 代码编译共享库
nasm

使用当前源从 asm 代码编译共享库

我只是在 asm 中做了一些基本函数,并将其编译在共享库中。喜欢 : BITS 64 global foo section .text foo: mov rax, 1 ret 我编译了: nasm -f elf64 foo.S -o foo.o && gcc -shared foo.o -o libfoo.so 我有一个主要的测试: #include <stdio.h> int foo(); int main() { ...

Admin

运行自定义编译的可执行文件返回“没有这样的文件或目录”
nasm

运行自定义编译的可执行文件返回“没有这样的文件或目录”

我有一个可执行文件,但是当我运行它时,我得到“没有这样的文件或目录” $ chmod a+x bin $ file bin bin: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, not stripped $ ./bin bash: ./bin: No such file or directory 请注意,该可执行文件实际上是 ELF 64 位,操作系统也是如此。 ...

Admin

ELF 符号可见性级别之间有什么区别?
nasm

ELF 符号可见性级别之间有什么区别?

这NASM 文档上“elf全球指令的扩展”说, 您还可以选择控制符号的 ELF 可见性。只需添加可见性关键字之一:default、internal、hidden或protected。当然是默认default的。 这些是在哪里定义的?以及如何ld使用它们?我懂了C++ 中经常提到的访问级别包括受保护的,民众, 和 私人的,但不知道ELF指的是不是这个? 我的用例是 C 和汇编,因此如果您能让这与这两种语言和链接器相关,那就加分了。 ...

Admin