Пошаговое понимание выполнения байт-кода Python (с помощью dis.dis). Что означают цифры? [дубликат]Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Пошаговое понимание выполнения байт-кода Python (с помощью dis.dis). Что означают цифры? [дубликат]

Сообщение Anonymous »

Я пытаюсь понять, как байт-код Python выполняется построчно с помощью модуля dis. Я написал простую функцию и анализирую ее дизассемблированный байт-код, но у меня возникли проблемы с пониманием некоторых частей вывода.
Вот мой код :

Код: Выделить всё

import dis

def sum(a, b):
c = a + b
print(f"the sum of a and b is {c}")

sum(3, 45)
dis.dis(sum)
Вывод dis.dis(sum) следующий:

Код: Выделить всё

     2           RESUME                   0
Изображение

Что я понимаю:
Байт-код начинается со строки 2, а затем переходит к строке 3.
Строка 3 — это «суперинструкция», загружающая значения a и b в стек, выполняет сложение, а затем сохраняет результат в c в массиве по индексу.
Мое замешательство:
В строке LOAD_FAST_LOAD_FAST 1 (a, b), я понимаю, что инструкция LOAD_FAST_LOAD_FAST загружает в стек значения a и b, но что означает 1 перед (a, b)? Я знаю, что STORE_FAST 2 (c) означает, что значение c сохраняется в массиве локальных переменных по индексу 2, но что именно означает число 1 в инструкции LOAD_FAST 1? Что означает 0 в BINARY_OP?
Может кто-нибудь помочь мне понять этот байт-код шаг за шагом? Меня это очень сбивает с толку.

Подробнее здесь: https://stackoverflow.com/questions/793 ... what-do-th
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Пошаговое понимание выполнения байт-кода Python. Что означают цифры? [дубликат]
    Anonymous » » в форуме Python
    0 Ответы
    11 Просмотры
    Последнее сообщение Anonymous
  • Понимание выполнения байт-кода Python. Что означают цифры после инструкций? [дубликат]
    Anonymous » » в форуме Python
    0 Ответы
    11 Просмотры
    Последнее сообщение Anonymous
  • Vscode, python — пошаговое выполнение кода
    Anonymous » » в форуме Python
    0 Ответы
    4 Просмотры
    Последнее сообщение Anonymous
  • Vscode, python — пошаговое выполнение кода
    Anonymous » » в форуме Python
    0 Ответы
    4 Просмотры
    Последнее сообщение Anonymous
  • Что означают эти цифры при наведении курсора на элемент во время проверки элемента?
    Anonymous » » в форуме CSS
    0 Ответы
    16 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»