(应用程序二进制接口)指定程序,库和操作系统之间的低级接口。例如。哪些寄存器用于传递函数参数。
这似乎暗示每个人都知道什么是“非脆弱 ABI”——考虑到它在 Xcode 中被提及的频率和事实性质。 例如... 下标重新...
clang 未对齐堆栈,然后在 _start 中尝试将 vmovaps 编写为 C 函数
我在start.c中有一个简单的c函数 $猫开始.c int main(int,char**); 无效_开始(){ char*v[2]={"k",0}; 主要(1,v); } 当我编译为汇编程序时,使用 clang -O -march=cannonlake -S...
我正在尝试构建一个 Telegram 机器人,用户可以在其中跟踪多个链上特定钱包上发生的 DEX 交换。 我注意到不同的 DEX 处理掉期的方式不同,并且,从...
我目前正在上一门涵盖 MIPS ISA 的课程,我注意到的一件事是临时寄存器的分割: 临时寄存器$t0到$t7存储在$8到$15中,但是$t8和$t9是...
Linux ARM64 调用约定:被调用者需要保存哪些寄存器?
是否有一个寄存器列表,在 aarch64 Linux/BSD 上,如果被调用者要使用它们,被调用者绝对必须保存/恢复它们? ABI 文档在这一点上似乎很混乱。或者至少,...
我的最终目标是获得代币在以太坊中的当前价格。为此,我使用 etherscan 的 api 获取合约 ABI,然后使用 ABI 和代币小数,获取当前价格...
我写了一个简单的 Rust 文件 #[no_mangle] pub extern "C" fn add(a: i32, b: i32) -> i32 { a+b } 并尝试用Java调用它。 所以我加载了它并定义了 2 个本机方法: ...
Android版本详细信息中的ABIs:armeabi-v7a是什么意思?请提供如何使用它的内部详细信息?
当运行android列表目标时,我得到了 ABI:armeabi-v7a 这是什么意思? 请提供如何使用它的内部详细信息?
x86-64 上的 C++:结构/类何时在寄存器中传递和返回?
假设 Linux 上的 x86-64 ABI,在 C++ 中的什么条件下,结构体会传递给寄存器中的函数,还是传递给堆栈上的函数?在什么条件下它们会返回到寄存器中?答案是吗
如何根据 ABI 变体将我的应用程序拆分为 .aab 文件?
我想根据不同的ABI(x86_64、x86、armeabi-v7a、arm64-v8a)将我的应用程序拆分为多个。现在我成功地根据该 ABI 获得了不同的 apk,有 4 个具有不同的 apk...
gcc -Wabi-tag 警告我什么以及我应该如何避免这种情况
启用 -Wabi-tag 时,我在尝试返回 std::string (按值)时收到警告。此警告的目的是什么?即忽略它会导致什么危害? 有什么选择可以避免...
为什么 Linux 和 Windows 下的 long 和 long double 类型大小不同?
我现在正在学习计算机架构。 为什么 Linux 和 Windows 操作系统之间的数据类型大小不同? 这是我的示例 C 代码。 #包括 int 主函数(无效) {...
我知道这里有很多关于 ABI 的问题,但我仍然不完全理解。 最近有人告诉我,当人们过去编写 Pascal 时,然后 C 变得更流行......
我喜欢并且经常使用 C++ 零规则,但现在有一个用例,我发现它很难使用。 我有 2 个库,都是单独维护的,甚至用不同的编译器编译到
使用 gcc 为裸机 ARM 进行编译时,`aapcs` 和 `aapcs-linux` ABI 选项有何不同?
我正在尝试将应用程序移植到 ARM 的 arm-none-eabi-gcc 工具链。该应用程序旨在在裸机目标上运行。 在这种情况下,-mabi 选项唯一合适的两个值是...
今天我遇到了以下问题: 使用 std::mem::{size_of, MaybeUninit}; 结构 Foo<'a> { foo: &'a i32, } fn 主() { println!("{}", size_of::&...
从nodejs api路由调用(get)时如何解决AbiError:参数解码错误或耗尽气体错误?
我正在使用 web3.js v4.7.0 通过 nodejs/express 与我的智能合约进行交互。下面是我的合同代码片段 杂注可靠性^0.8.10; 合约交易 { uint 公共计数 =...
我是 Linux 内核模块编程的新手,许多关于该主题的入门指南都很少包含有关如何构建将在许多版本和 CPU 平台上运行的内核模块的信息...
“合同”类型上不存在属性“基金”。 Ethersjs ABI 类型转换 [TypeScript]
在学习帕特里克·柯林斯课程时。我遇到了 TypeScript 问题。 我在本教程中使用 TypeScript,但原始版本是 JavaScript。 下面的代码导致错误。 索引.ts 常量
为什么实例化 core::time::Nanoseconds 不安全?
我正在 core::time 中漫步,并对纳秒的实现感到惊讶。 为什么实例化它需要一个不安全的块? 我理解有关范围限制的评论...