Разница между прямым и косвенным вызовом подпрограмм в сборке заключается в том, как указывается адрес перехода: 2
- При прямом вызове в явной форме указывается адрес (смещение) точки входа в подпрограмму. 1 В качестве этого адреса можно использовать как имя процедуры, так и имя метки, характеризующей точку входа в подпрограмму. 1
- При косвенном вызове адрес перехода извлекается не из кода команды, а из ячеек памяти. 2 В коде команды содержится информация о том, где находится адрес вызова. 2
Таким образом, прямой вызов предполагает указание адреса в явной форме, а при косвенном — использование ячеек памяти для определения адреса перехода. 12