В твоей формулировке "до конца". Текст программы и переменные хранятся в общем пространстве памяти, отдельных лимитов для переменных нет. Область переменных идет за текстом программы и двигается к старшим адресам при добавлении новых строк. При выполнении DIM, LET, FOR, INPUT BASIC выполняет присваивание и, если находит переменную подходящего типа, копирует новое значение поверх старого, если не находит - создает новую переменную (и увеличивает занятую ими область вплоть до out of memory). Крмое того, за областью переменных следует так называемая рабочая область, в которой хранятся значения переменных сложных типов (строки, массивы). Так что out of memory может случаться при присваивании даже если переменная уже есть, но стала "больше" (строка длиннее, массив больше).





Ответить с цитированием