gpt4 book ai didi

assembly - pcasm 书籍示例

转载 作者:行者123 更新时间:2023-12-04 18:16:23 27 4
gpt4 key购买 nike

我是 x86 汇编语言的新手。我正在阅读一本名为 pcasm 的书,我想知道是否有人可以帮助我更好地理解这个代码示例(这是书中的部分代码):

32    mov    ebx, input2
33 mov ecx, $ + 7
34 jmp short get_int
35
36 mov eax, [input1]


64 get_int:
65 call read_int
66 mov [ebx], eax
67 jmp ecx

现在,我理解的是 $给出当前地址,但是:
  • 为什么+ 7 ?
  • 我该如何计算呢?
  • 如果我使用 jmp near get_int,号码会怎样? (4 个字节)和 jmp near word get_int (2 个字节)?第二个语法正确还是应该是 jmp word get_int ?

  • 谢谢

    最佳答案

  • 示例代码使用 + 7因为大概为源代码行 33 和 34 组合生成了 7 个字节的机器代码。
  • 您可以通过查看汇编器输出列表(您可能必须在汇编器中打开它)并计算字节数来计算所需的偏移量。
  • 如果您使用汇编为不同数量的机器代码字节的指令,则所需的偏移量将不同。您必须在您的环境中尝试它才能看到您需要什么。
  • 关于assembly - pcasm 书籍示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11605219/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com