读小端
公开化「字节串」而化「整数」而化「整数」而「整数」文言:验头与诸命令之字段,并成样例:书“豫言操作系统”一行,以退出码七终。书写与退出皆由 libSystem 之 _write、_exit,其址由 dyld 填于数据段。汉语:核对 Mach-O 文件头与加载命令的字段;另生成样例可执行文件,在 macOS 上实际运行:调用 libSystem 的 _write 写一行“豫言操作系统”,再以 _exit(7) 结束。两个函数的地址由 dyld 按绑定信息填进数据段的指针槽。
包说明.html模块 / 96
马赫格式写出。测试。豫
化「字节串」而化「整数」而化「整数」而「整数」文言:验头与诸命令之字段,并成样例:书“豫言操作系统”一行,以退出码七终。书写与退出皆由 libSystem 之 _write、_exit,其址由 dyld 填于数据段。汉语:核对 Mach-O 文件头与加载命令的字段;另生成样例可执行文件,在 macOS 上实际运行:调用 libSystem 的 _write 写一行“豫言操作系统”,再以 _exit(7) 结束。两个函数的地址由 dyld 按绑定信息填进数据段的指针槽。
化「字符串」而化「字节串」而化「整数」而化「整数」而化「整数」而「有」暂无说明。
化(「列」于「整数」)而「字节串」暂无说明。
「字节串」暂无说明。
「整数」暂无说明。
化「整数」而化「整数」而「整数」文言:取址之令:ldr x16,以相对之偏读数据段之槽。汉语:LDR x16, [PC + 偏移](字面量寻址),读取数据段中的导入指针槽。
化「整数」而「字节串」文言:臂之相对样:x0 一,adr x1 消息,x2 长,经槽调 _write;x0 七,经槽调 _exit。汉语:arm64 位置无关样例:mov x0,#1;adr x1,消息;mov x2,#长;ldr x16,[_write 槽];blr x16;mov x0,#7;ldr x16,[_exit 槽];blr x16;其后是消息。
化「整数」而(「列」于「整数」)文言:以 movz、movk 四令置六十四位之数于 x1。汉语:用 movz 与三条 movk 把 64 位立即数装入 x1。
化「整数」而「字节串」文言:臂之绝对样:消息之址以绝对之数置之。若映像不在所定之址,则书不成而退出码犹七。汉语:arm64 绝对地址样例:消息地址用 movz/movk 以绝对值装入 x1。若内核未按文件中的虚址装载(映像被滑动),_write 得到无效地址而不输出,退出码仍为 7;据此判断固定地址是否生效。
化「整数」而「字节串」文言:兼之样:先推 rbp 以齐栈,edi 一,lea rsi 消息,edx 长,经槽调 _write;edi 七,经槽调 _exit。汉语:x86-64 样例:push rbp(使栈 16 字节对齐);mov edi,1;lea rsi,[rip+消息];mov edx,长;call [rip+_write 槽];mov edi,7;call [rip+_exit 槽];其后是消息。
(「列」于(「字符串」合「整数」))暂无说明。
化「爻」而化「爻」而化「整数」而化「字节串」而「字节串」暂无说明。
「字节串」暂无说明。
「字节串」文言:非位置无关,零页四吉。汉语:非位置无关(无 MH_PIE),零页 4 GiB:检验内核是否按文件虚址装载。
「字节串」文言:非位置无关,零页一吉,文本起于 0x40000000。汉语:非位置无关,零页 1 GiB,__TEXT 从 0x40000000 开始:检验能否使用低于 4 GiB 的固定地址。
「字节串」暂无说明。
「有」文言:书诸样例于工作目录。汉语:写出样例文件,供 macOS 上运行验证(x86-64 样例需在 Intel Mac 上运行)。
「有」暂无说明。
「有」暂无说明。
「有」暂无说明。