vak: (бэсм-6)
[personal profile] vak
Пока что для Би на БЭСМ-6 я пришёл к следующему соглашению о связях. Вызов фукнции:
    result = foobar(a, b, c)
транслируется как:
       ,xta, a
       ,xts, b
       ,xts, c
    14 ,vtm, 3
    13 ,vjm, foobar
       ,atx, result
Заметьте: на регистре 14 передаётся количество аргументов. Это нужно, чтобы функции с переменным количеством аргументов могли правильно отыскать в стеке свой первый параметр. Иначе printf() не сможет работать.

Получается односторонняя совместимость с Фортраном. Из Би можно будет вызывать фортрановские функции. Но не наоборот.

Date: 2025-04-10 01:08 (UTC)
sab123: (Default)
From: [personal profile] sab123
Через декларацию? Хотя, наверное, декларации там необязательны.