Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.
Revision as of 09:49, 14 January 2026 by Cszhu (talk | contribs) (just me. no way to find me. new code keep.)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

code c d c++ uc drop code to zero. but still can remake those if I need again to create a program or a mutator like. maybe just a pr ai code show out ai free code but no complier yet.

//code

#include <unistd.h> // 系统调用需要

// 我们不直接用 printf,我们要模拟 printf 内部最底层的动作

void deep_print(const char* str, int len) {

   // 1. [C语言层] 指针遍历过程 (暴露内存访问)
   printf("[C_LAYER] 开始遍历字符数组内存...\n");
   for(int i = 0; i < len; i++) {
       printf("[C_LAYER] 读取内存地址 %p, 值: '%c' (ASCII: %d)\n", 
              (void*)(str+i), str[i], (int)str[i]);
   }
   // 2. [汇编层] 模拟系统调用准备 (暴露寄存器)
   // 在 x86-64 Linux 中,write 系统调用号是 1, 放入 rax
   // 文件描述符 1 (stdout) 放入 rdi, 字符串指针放入 rsi, 长度放入 rdx
   printf("[ASM_LAYER] 准备寄存器上下文...\n");
   
   // 这里我们使用 GCC 的内联汇编来模拟这个过程
   // 约束 "=a" 表示输出到 %rax, "D" 表示输入到 %rdi 等
   long syscall_result;
   asm volatile (
       "mov %1, %%rdi;"        // 将 stdout (1) 移入 rdi
       "mov %2, %%rsi;"        // 将字符串指针移入 rsi
       "mov %3, %%rdx;"        // 将长度移入 rdx
       "mov $1, %%rax;"        // 系统调用号 write (1)
       "syscall;"              // 触发系统调用中断
       "mov %%rax, %0;"        // 将返回值存回变量
       : "=r" (syscall_result)         // 输出
       : "r" (1), "r" (str), "r" (len) // 输入
       : "rdi", "rsi", "rdx", "rax", "rcx", "r11", "memory" // 破坏列表
   );
   printf("[ASM_LAYER] 系统调用完成,返回值 (写入字节数): %ld\n", syscall_result);

}

int main() {

   const char* msg = "Hello World";
   int len = 11;
   printf("=== 深度还原:Hello World 的内部执行过程 ===\n\n");
   
   deep_print(msg, len);
   return 0;

} // code

yet I don't have email can't get new a wiki by myself.

Cookies help us deliver our services. By using our services, you agree to our use of cookies.