Где в абстрактной машине Уоррена создаются переменные аргумента?
Я пытаюсь создать свою собственную реализацию WAM и использую инструкции на рис. 2.10 "Абстрактная машина Уоррена: реконструкция учебника" в качестве контрольного примера. Однако мне нужно пройти A1
а также A2
в get_structure
, Но где создаются обе переменные? put_value
а также put_variable
оба создают A-переменные, но ни одна не указана в инструкциях.
1 ответ
Ая "регистры аргументов". Они являются частью машины. Так put_value
не создает их, это наполняет их. Рисунок 2.8 на странице 23 говорит:
put_value X_n, A_i === A_i <- X_n
смысл, сохранить значение Xn в Ai.