assembly - 为纹身编写汇编代码

标签 assembly nasm

我请求帮助为简单的“程序纹身”编写 32 位汇编代码。

我想纹身。经过深思熟虑,我决定要一个使用汇编代码并与我的女儿 Alisha 打交道的纹身。我的想法是提出一种“不合逻辑的计算”,一种违反汇编语言定律的计算。我想向像我这样习惯了 1 和 0 的人来说生 child 是多么不合逻辑表示敬意。

我正在考虑使用基于 x86 的 32 位寄存器,例如 EAX、EBX 和 ECX,当然还有一些推送和弹出。

纹身不会有注释(括号中没有任何内容),但会包含开始:符号。

start:
    mov eax, 53656C66h   (ASCII for "Self")
    mov ebx, 57696665h   (ASCII for "Wife")
    add ebx, eax

    push ebx
    push 3F81DBh         (Decimal 4162011 = daughter's birth date)

    pop ecx              (The first pop would give my daughter's birth date)
    pop ecx              (the second pop would NOT give the answer of eax added to ebx,
                          but would rather give my daughter’s nickname)
    ??? ecx

我的想法是替换???使用读取指令,然后显示 ecx 中的值现在是 416c69h(ASCII 表示“Ali”,我女儿的昵称)。我认为这个想法太棒了,如果我得到它,我会发布纹身的照片(当然)。

我的想法是最后一次弹出将违反计算机逻辑。从本质上讲,生 child 违背了我们所知道的“逻辑”,所以这是我尝试与出生之美相提并论的尝试。

还有其他想法吗?

最佳答案

有点奇怪的是该程序实际上什么也没做。 为什么不编写代码,将您的名字、您妻子的名字以及她出生日期的某种编码等内容组合起来,得到您女儿的名字呢?也许通过一系列带有一些有意义的值的XOR指令?

关于assembly - 为纹身编写汇编代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11285673/

相关文章:

assembly - 在汇编器中编写函数

汇编 x86 MASM 循环分析

assembly - nasm:重定位被截断以适合:R_386_PC8 针对 `*UND*'

c - 从 C 调用 ARM 汇编函数时出现 fatal error

来自 NASM 代码的 Linux64 线程本地存储 (TLS) 数据

assembly - 使用 NASM + LD 编写/链接平面二进制文件

Linux NASM 检测 EOF

assembly - 既然有了编译器,为什么还需要汇编器呢?

linux - 如何在 Linux 上使用系统调用等待击键中断?

arrays - NASM - 使用标签作为数组偏移量