Таблица modetab
MikhailTerekhov edited this page 2017-10-19 17:45:10 +03:00
This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

Структура таблицы описателей типов modetab

Простые типы int, char, float, void кодируются отрицательными целыми числами, более сложные типы собираются в таблице modetab (без повторений) и представляются положительными ссылками на нее.

В modetab каждый тип начинается с ключевого слова, за которым следуют в определенном порядке ссылки на identab, modetab и целые числа.

STRUCT, len, N, тип поля, ссылка на reprtab, …

Здесь N – удвоенное число полей (просто количество ссылок), len – сколько слов занимает значение такого типа.

FUNCTION, тип результата, N, N ссылок на типы формальных параметров.

ARRAY, тип элемента (может быть снова массив)

POINT, тип