Редактирование: Буфер
Перейти к навигации
Перейти к поиску
Правка может быть отменена. Пожалуйста, просмотрите сравнение версий ниже, чтобы убедиться, что это нужная вам правка, и запишите страницу ниже, чтобы отменить правку.
Текущая версия | Ваш текст | ||
Строка 1: | Строка 1: | ||
'''Буфер'''. Трёхкилобайтная [[Текст|область текста ЭКВМ]] ([[ | '''Буфер'''. Трёхкилобайтная [[Текст|область текста ЭКВМ]] ([[регистры байтовых данных]] с номерами от 5096 до 8167) используется в [[Каллисто]], как ''буфер'' (''англ.'' buffer). | ||
В ''буфере'' может храниться содержимое одного из | В ''буфере'' может храниться содержимое одного из ''блоков'' — пронумерованных текстовых файлов, находящихся на электронном диске ЭКВМ в специально созданном для этого каталоге. Стандартные средства [[Каллисто]] позволяют исполнять и компилировать из ''буфера'' программы, написанные на языке [[Каллисто]], считывать ''буфер'' из ''блока'', а также записывать изменённый ''буфер'' обратно, в соответствующий ему ''блок''. | ||
Программисты могут использовать ''буфер'' и в других целях. Например, поставляемый вместе с [[Каллисто]] редактор EDIT использует ''буфер'' для хранения редактируемого экрана. Известны реализации на Форте виртуальных массивов, с помощью механизма ''буферов''. | |||
При [[ | При загрузке словаря (уже откомпилированной программы на [[Каллисто]]) содержимое ''буфера'' остаётся неизменным. Это позволяет использовать ''буфер'' для передачи информации между последовательно исполняемыми программами, реализуя на [[Каллисто]] механизм оверлеев (англ. overlay). Если не использовать ''буфер'' для доступа к ''блокам'', выделенную под ''буфер'' память можно использовать для расширения словаря и [[Стек возвратов Каллисто|стека возвратов]]. | ||
== История == | == История == | ||
Многие реализации языка Форт | Многие реализации языка Форт хранят в оперативной памяти несколько ''буферов'', отображающие различные ''блоки'' диска, каждый размером в 1 Кбайт. Записанный в таком ''блоке'' экран обычно представляется, как содержащий 16 строчек по 64 символа. Система ''буферов'' и ''блоков'' позволяет Форту исполняться на машинах без операционной, и даже без файловой системы. | ||
Один [[ | Один экран [[Каллисто]] имеет размер трёх экранов Форта и содержит 48=16×3 строчек по 64 символов каждая. Одинаковая с Фортом длина строки облегчает перенос на [[Каллисто]] программ, написанных на Форте. Длина строки в 64 символа отличается от той, которую использует [[встроенная программа]] ЭКВМ. | ||
Поскольку памяти ЭКВМ хватает только на один ''буфер'', слова Форта FIRST, LIMIT, PREV, USE и +BUF в [[Каллисто]] не реализованы. Для совместимости с Фортом в стандартных словах [[SAVE-BUFFERS]] и [[EMPTY-BUFFERS]] английское слово | Поскольку памяти ЭКВМ хватает только на один ''буфер'', слова Форта FIRST, LIMIT, PREV, USE и +BUF в [[Каллисто]] не реализованы. Для совместимости с Фортом в стандартных словах [[SAVE-BUFFERS]] и [[EMPTY-BUFFERS]] английское слово buffer (''рус.'' буфер) по-прежнему используется во множественном числе, хотя в [[Каллисто]] ''буфер'' всего один. | ||
[[Категория: Структуры данных Каллисто]] | [[Категория: Структуры данных Каллисто]] |