- •Информация
- •Свойства информации
- •Преобразования сигнала
- •Системы счисления
- •Перевод из двоичной и шестнадцатеричной систем счисления в десятичную.
- •Перевод из двоичной системы счисления в шестнадцатеричную:
- •Правила вычитания
- •Правила умножения
- •Кодирование сигнала
- •Сложение по модулю
- •Ascii-коды
- •Коды Грея
- •Коды, учитывающие частоту символов
- •Код Штибица
- •Метод Вижинера
- •Метод Шеннона-Фано
- •Метод Хаффмена
- •Декодирование эффективных кодов
- •Методы эффективного кодирования словарей
- •Кодовое расстояние и корректирующая способность кода
- •Обнаружение ошибки
- •Коды, исправляющие ошибки
- •Комбинаторная мера
- •Аддитивная мера
- •Статистический подход к измерению информации
- •Полезность информации
- •Истинность информации
- •Виды современных компьютеров
- •Персональные компьютеры
- •Устройство управления
- •Арифметико-логическое устройство
- •Формы представления вещественных чисел
- •Коды представления числовых данных в алу
- •Сложение вещественных чисел
- •Поскольку старший числовой разряд мантиссы равен 0, она требует нормализации. Для этого:
- •Офисные пакеты
- •Настольные издательские системы
- •Системы автоматизации проектирования (сапр)
- •Инструментарий технологии программирования
- •Первое поколение эвм
- •Второе поколение эвм
- •Третье поколение эвм
- •Четвертое поколение эвм
- •Технология проектирования программ
- •Формализация задачи
- •Структурно-стилизованный способ
- •Операторный язык
- •Команда комментарии
- •Методы проектирования алгоритмов
- •Модуль Ввод и размещение
- •Модуль Ввод и анализ
- •Модуль Упорядочение
- •Модуль Определение
- •Лексический анализ
- •Синтаксический анализ
- •Семантический анализ
- •Генерация промежуточного кода
- •Оптимизация промежуточного кода
- •Компоновка
- •Выполнение и тестирование программы
- •Эволюция использования компьютеров. Проект эвм пятого поколения
- •Структура информационного процесса
- •Сбор информации
- •Первичное восприятие информации
- •Методы классификации
- •Иерархическая классификация
- •Фасетная классификация
- •Распознавание и кодирование объектов
- •Регистрация информации
- •Запись информации оператором
- •Контроль правильности записи данных
- •Первичное восприятие и измерение информации
- •Анализ результатов первичного восприятия и измерения
- •Распознавание символов
- •Восприятие информации клавиатурой
- •Первичное восприятие и измерение
- •Компьютерные сети
- •Топология сетей
- •Методы передачи данных в сетях
- •Организация обмена информацией в сети
- •Обработка информации
- •Хранение информации
- •Операции над данными
- •Линейные списки
- •Блочный способ
- •Двоичный способ
- •Индексно-последовательный способ
- •Индексно-произвольный способ
- •Размещение элементов в упорядоченном списке
- •Исходный список представлен таблицей 11:
- •Рандомизация
- •Фамилия (ключ) Числовое значение ключа
- •3) Формирование реальных номеров бакетов. Для определения константы с выполним следующие вычисления:
- •Метод квадратов. Распределение элементов по бакетам показано в таблице 20:
- •Сдвиг разрядов. Распределение элементов по бакетам показано в таблице 21:
- •Метод складывания. Распределение элементов по бакетам показано в таблице 22:
- •Оптимизированные цепочки элементов
- •Инвертированные списки
- •Иерархические структуры
- •Множественные ссылки на порожденные элементы
- •Ссылки на подобные и порожденные элементы
- •Кольцевые структуры
- •Справочники
- •Битовые отображения
- •Сетевые структуры
- •Множественные ссылки на порожденные элементы
- •Кольцевые структуры
- •Справочники
- •Битовые отображения
- •Жидкокристаллические мониторы
- •Плазменные мониторы
- •Технология вывода изображений на мониторы, использующие элт
- •Принципы организации текстовых видеорежимов
- •Принципы организации графических видеорежимов
- •Манипуляторы курсора
- •Механическая мышь
- •Устройства вывода на бумажный носитель
- •Матричные принтеры
- •Струйная технология
- •Термическая технология
- •Электрографическая технология
- •Технология формирования цвета
Операторный язык
Операторный язык – это такой способ кодирования алгоритма, в результате которого получается понятная для компьютера запись алгоритма - программа. Этот способ требует, как минимум, знания правил записи выражений средствами того или иного языка программирования.
Эволюция языков программирования показательна с точки зрения того, как менялась технология кодирования алгоритмов, упрощая труд программистов:
первые языки программирования – это машинные коды – аналог машинных команд. Структура команды включает код операции (как правило, числовой) и список операндов. Программирование требовало от программиста распределение переменных и команд по доступным адресам памяти, для чего необходимо было знать требуемые объемы команд и переменных. Для вычислений также использовался специальный регистр процессора - сумматор. В качестве операндов выступали не переменные, а их адреса. Например, пусть память компьютера, которой располагает программист, содержит адреса от 1 до 100, по каждому из которых доступен байт памяти. Нужно запрограммировать вычисление переменной z по формуле: z = a + b, причем a = 8, b = 10. Пусть имеется набор двухадресных машинных команд, включающий, в частности, команды:
Код операции |
Объем операции |
Действие |
124 |
3б |
сложить операнды, результат – в сумматоре |
125 |
2б |
поместить содержимое сумматора по адресу |
126 |
3б |
поместить константу по адресу |
Программист распределяет переменные (с учетом размера их значений) по адресам:
Переменная |
Требуемый объем памяти |
Адрес |
a |
1б |
1 |
b |
1б |
2 |
z |
1б |
3 |
Тогда вся программа будет выглядеть следующим образом:
адрес памяти |
содержимое памяти |
комментарий |
1 |
- |
для переменной a |
2 |
- |
для переменной b |
3 |
- |
для переменной z |
4 |
126 8,1 |
константа 8 помещается по адресу 1, т.е. вычисляется a = 8. После этого действия содержимое памяти по адресу 1 становится равным 8 |
7 |
126 10,2 |
константа 10 помещается по адресу 2, т.е. вычисляется b = 10. После этого действия содержимое памяти по адресу 2 становится равным 10 |
10 |
124 1,2 |
содержимое адресов 1 и 2 складывается, т.е. вычисляется a+b. Результат – в сумматоре |
13 |
125 3 |
содержимое сумматора размещается по адресу 3, т.е. выполняется присваивание z=a+b. После этого действия содержимое памяти по адресу 3 становится равным 18 |
В настоящее время машинные коды как средство кодирования алгоритма программистом используются для узко специализированных ЭВМ. В то же время машинные коды являются результатом трансляции программы, написанной на более развитом языке программирования, на внутренний язык компьютера.
автокоды явились развитием машинных кодов, когда числовые коды операций заменились мнемоническими обозначениями, по которым можно восстановить смысл операции, а в адресной части можно было использовать имена переменных, а не их адреса. Например, числовые коды операций 124 и 125 из предыдущего примера заменились мнемоническими кодами, соответственно, ADD (сложить, англ.) и MOVE (поместить, англ.). Тогда предыдущая задача для двухадресного кода запишется так:
