linux - 是否可以链接 16 位代码和 32 位代码?

标签 linux assembly linker makefile 16-bit

我问了一个相关问题here .现在我有更多基本问题,我的意思是我原来的问题已经改变,所以我决定问一个新问题。我在链接器脚本和 makefile 方面没有太多经验。读取以下四个文件setup.ld , Makefile , bioscall.Spmjump.S来自 linux,我认为有可能(工作)是否正确?

bioscall.S :

.code16
.section ".inittext","ax"

pmjump.S :

.code32
.section ".text32","ax"

setup.ld :

.inittext       : { *(.inittext) }

.text32         : { *(.text32) }

最佳答案

ELF 格式没有 16 位变体,因此您的 16 位代码将被放入 32 位部分。是的,这些可以与“真正的”32 位代码链接在一起。结果是否有效是另一个问题。

关于linux - 是否可以链接 16 位代码和 32 位代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22983797/

相关文章:

linux - 从任意音频文件中提取语音部分的好方法是什么?

java - IJVM ILOAD 指令未加载正确的值

ios - 未找到 ios 的 React native 基本 header

linux - 我没有编辑 www-data :www-data files 的权限

linux - qemu:通过 ISO 安装 ubuntu 卡住,显示 "SVM"CPU 位警告

assembly - Intel 8085 实际上是如何对之前的借位执行减法的?

assembly - 使用手写汇编调用 native 代码

c++ - 对 main() 中函数的 undefined reference

ios - libcrypto 和 libGoogleAdMobAds 中的重复符号 _MD5

linux - 如何检查参数是否包含某些单词