问题标签 [fasm]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
linux - 链接的汇编子例程无法按预期工作
我正在 FASM 中编写一个简单的子程序来将 32 位无符号整数打印到 STDOUT。这就是我想出的:
然后我又写了一个程序来测试上面的子程序是否正常工作:
我将这两个程序编译为它们相应的目标文件,并将它们链接起来以创建可执行文件。
然而,在执行程序时,它只显示7
而不是1337
. 事实证明,无论数字本身如何,都只显示数字的最后一位。
这很奇怪,因为我的uprint
子程序是正确的。事实上,如果我将这两个程序组合成一个程序,那么它会1337
正确显示。
我究竟做错了什么?
compiler-construction - 是否有任何其他语言可以编译为 FASM?
FASM 是目前最快、最高效的 x86/64 汇编器,我将它用作我正在编写的一种新语言的编译器的后端。
因为我只使用 Ubuntu,所以我的编译器生成的 FASM 代码是特定于 Linux 的。但是我想让它跨平台兼容。
因此,我首先想研究其他也使用 FASM 作为后端的编译器。AFAIK 只有 Glasgow Haskell 编译器 (GHC) 可以做到这一点。
有谁知道产生跨平台兼容 FASM 代码的任何其他编译器?有良好文档的首选。
linux - 如何将 readline 库链接到目标文件?
我正在尝试在用 FASM 编写的程序中使用 GNU readline 库。这是我的汇编代码:
然后我编译并链接它如下:
但是,当我尝试执行./test
bash 时,会出现以下错误消息:
test
可执行文件存在于目录中。怎么了?我没有libreadline
正确链接图书馆吗?
assembly - FASM 并发增量和 CPU 负载
我正在试验 FASM 以提高我对并发性的理解。我创建了一个程序,它有两个线程,每个线程都产生一定数量的lock xadd
. 我在 i7 上的 Win7 64bit 上运行它,我得到了非常有趣的结果。虽然程序本身可以正常工作,但它加载了 4 个内核而不是我预期的两个内核。
任务管理器的“性能”显示清晰的 4 核负载
资源监视器的 CPU 选项卡显示我的进程有两个线程
有人可以提示为什么会发生这种情况吗?有没有办法判断哪个内核当前正在运行我的 FASM 程序中的一段代码(只是为了确保内核确实不同)?
windows - Win32 FASM .inc 文件之间的差异
Flat Assembler 中的 win32a、win32ax、win32axp、win32w、win32wx 和 win32wxp .inc 文件有什么区别?我试图在 FASM 文档中找到它,但我无法...
在此先感谢 ChristonianCoder
assembly - 关于FASM的一些问题
我是组装领域的新手,在我浪费时间和理智来学习它之前,我想问一些关于 FASM 的问题。
- 我读到 FASM 可以输出 COFF .obj 文件。这个 .obj 文件是否可以与从其他程序(如 GoRC(资源编译器))生成的其他 .obj 文件链接在一起。
- 如何在 Windows 中使使用 FASM 生成的可执行文件能够感知 UAC(例如让它们以管理员权限运行)
- 我在哪里可以找到 FASM 中的 asm 分步教程?
assembly - 从引导加载程序加载第二个扇区
我正在尝试加载软盘的第二扇区
我用 fasm 1.7 和 windows 7、VMware 测试了这段代码。制作软盘映像文件,我dd
从 Ubuntu 13.04 开始使用,我也用来dd
写入.bin
.img
这是我的代码
结果=根本不打印'7'我怎么了?谢谢
windows - masm FPU 到 fasm FPU 无法翻译且无法正常工作
我在masm中有这段代码来处理FPU,效果很好
在这段代码中,我从 2 个不同的文本框中得到一个数字,然后将它们分开,然后将结果输出到另一个文本框
这是本地的数据
这是代码
我正在尝试将代码转换为 fasm
这是我到目前为止所拥有的,但它不起作用 textbox3 只是说 0
这是数据(这不是本地数据,因为我还没有学会如何在 fasm 中做到这一点)
这是代码
我知道这段代码不正确,因为我没有在开始时将文本转换为浮动,但我不知道如何
我也尝试了一个更简单的版本,它也不起作用
所以我的问题是有人可以告诉我如何从 2 个不同的文本框中读取一个数字,然后将它们分开,然后使用 fasm 代码将结果返回到另一个文本框
谢谢你
string - 如何比较 fasm 中超过 dword 大小的字符串?
我是一个组装新手,正在尝试编写文件搜索器之类的东西。我使用这个片段与 4 字母掩码 (FASM) 进行比较:
如何更改此代码段以使用 5 字母扩展名,例如“.docx”?谢谢你。
string - 比较 FASM 中的两个字符串
当谈到 FASM 时,我是一个新手,而且对 ASM 来说一般来说还是很新的,但我正在尝试比较存储在“变量”中的两个字符串:user_input
和exit_cmd
:
目前,它组装得很好,但是当我在提示中输入任何内容时它会崩溃。是的,我的代码很乱,我试图完成的任务似乎超出了我所知道的 ASM 水平,但我已经用其他语言完成了它,所以我正在用 ASM 进行尝试。
如果字符串匹配,您可以看到我正在使用宏CompareStrings
(来源未知;它不是我的)设置EAX
为 1,但是当我EAX
使用 1CMP
与JE
标签进行比较时,它拒绝工作。有什么帮助吗?
这是错误的代码: