Все о моделировании в Компас-3D LT
   Главная Статьи Файлы Форум Ссылки Категории новостей
April 11 2026 08:20:22   
Навигация
Главная
Статьи
Файлы
FAQ
Форум
Ссылки
Категории новостей
Обратная связь
Фото галерея
Поиск
Разное
Карта Сайта
Популярные статьи
Что необходимо ... 65535
4.12.1 Професси... 36324
Учимся удалять!... 33210
Примеры, синони... 24428
Декартовы коорд... 23896
Просмотр готовы... 23749
FAST (методика ... 22501
содержание - се... 21899
Просмотр готовы... 20777
Работа с инстру... 16340
Сейчас на сайте
Гостей: 1
На сайте нет зарегистрированных пользователей

Пользователей: 9,955
новичок: Logyattella
Друзья сайта
Ramblers Top100
Рейтинг@Mail.ru

Реклама
Выполняем курсовые и лабораторные по разным языкам программирования
Подробнее - курсовые и лабораторные на заказ по Delphi
Turbo Pascal, Assembler, C, C++, C#, Visual Basic, Java, GPSS, Prolog
10.3.1 Символьные списки
Строковый интерфейс обрабатывает данные в символьных списках. Символьный список (clist) представляет собой переменной длины список символьных блоков с использованием указателей и с подсчетом количества символов в списке. Символьный блок (cblock) содержит указатель на следующий блок в списке, небольшой массив хранимой в символьном виде информации и адреса смещений, показывающие место расположения внутри блока корректной информации (Рисунок 10.10). Смещение до начала показывает первую позицию расположения корректной информации в массиве, смещение до конца показывает первую позицию расположения некорректной информации.
Рисунок 10.10. Символьный блок
Ядро обеспечивает ведение списка свободных символьных блоков и выполняет над символьными списками и символьными блоками шесть операций.
1. Ядро назначает драйверу символьный блок из списка свободных символьных блоков.
2. Оно также возвращает символьный блок в список свободных символьных блоков.
3. Ядро может выбирать первый символ из символьного списка: оно удаляет первый символ из первого символьного блока в списке и устанавливает значения счетчика символов в списке и указателей в блоке таким образом, чтобы последующие операции не выбирали один и тот же символ. Если в результате операции выбран последний символ блока, ядро помещает в список свободных символьных блоков пустой блок и переустанавливает указатели в символьном списке. Если в символьном списке отсутствуют символы, ядро возвращает пустой символ.
4. Ядро может поместить символ в конец символьного списка путем поиска последнего символьного блока в списке, включения символа в него и переустановки адресов смещений. Если символьный блок заполнен, ядро выделяет новый символьный блок, включает его в конец символьного списка и помещает символ в новый блок.
5. Ядро может удалять от начала списка группу символов по одному блоку за одну операцию, что эквивалентно удалению всех символов в блоке за один раз.
6. Ядро может поместить блок с символами в конец символьного списка.
Символьные списки позволяют создать несложный механизм буферизации, полезный при небольшом объеме передаваемых данных, типичном для медленных устройств, таких как терминалы. Они дают возможность манипулировать с данными с каждым символом в отдельности и с группой символьных блоков. Например, Рисунок 10.11 иллюстрирует удаление символов из символьного списка; ядро удаляет по одному символу из первого блока в списке (Рисунок 10.11а-в) до тех пор, пока в блоке не останется ни одного символа (Рисунок 10.11 г); затем оно устанавливает указатель списка на следующий блок, который становится первым блоком в списке. Подобно этому на Рисунке 10.12 показано, как ядро включает символы в символьный список; при этом предполагается, что в одном блоке помещается до 8 символов и что ядро размещает новый блок в конце списка (Рисунок 10.12 г).
Комментарии
Нет комментариев.
Добавить комментарий
Пожалуйста залогиньтесь для добавления комментария.
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.

Нет данных для оценки.
Гость
Имя

Пароль



Вы не зарегистрированны?
Нажмите здесь для регистрации.

Забыли пароль?
Запросите новый здесь.
Случайные статьи
4.1.2 Обращение к ...
О чем мы узнали ?
7.2.2 Группы проце...
Порядок сборки
Компактность и эфф...
Выводы 2
Классификация спос...
7.3.6. Технология...
В бой идут одни ст...
7.3.7. Документац...
FLS Silver, FLS Go...
5.8 СОЗДАНИЕ СПЕЦИ...
Просмотр готовых ч...
Глава шестая. РАС...
4. Разработка инфо...
13.2 СВЯЗЬ ТИПА NE...
Встроенная база да...
Анализ результатов...
4.1.1 Определение
Супертип
5.1 OPEN
Прокладка маршрута
Присвоение наимено...
Модемы
1.1. Зрелые и незр...
Файл с ручной обра...
Глава 10. Особенно...
9.5 УПРАЖНЕНИЯ
Глава 4. Основные ...
«Логик-теоретик»
Реализация в базе ...
Спрашивай – Отвечаем
4. Продукции типа...
Как правильно наст...
4.12.3.3 Цифровые ...
ГЛАВА 12. МНОГОПРО...
11.1 ТРАССИРОВКА П...
Стоимость эксплуат...
Глава 16. GPS trac...
7.3.8. Сбор и анал...
Мини-чат
Вам необходимо залогиниться.

Нет присланных сообщений.
Copyright © 2009