
- •Содержание
- •1.Понятие информатики
- •1.1. История развития информатики
- •1.2. Мировоззренческие экономические и правовые аспекты информационных технологий
- •2.Понятие информации и ее измерение
- •2.1. Меры информации
- •2.2. Единицы измерения информации и примеры
- •2.2.1Синтаксическая мера информации
- •2.2.2Семантическая мера информации
- •2.2.3Прагматическая мера информации
- •2.2.4Алгоритмическая мера информации
- •2.3. Количество и качество информации
- •2.4. Единицы измерения информации
- •2.5. Информация и энтропия
- •2.5.1Сообщения и сигналы
- •2.5.2Схема передачи информации
- •2.5.3Энтропия
- •2.5.4Избыточность
- •2.5.5Сенсация
- •3.Понятие информационной технологии
- •3.1. Новая информационная технология
- •3.2. Инструментарий информационной технологии
- •3.3. Составляющие информационной технологии
- •3.4. Развитие информационных технологий
- •3.4.1Нулевое поколение ит
- •3.4.2Первое поколение ит
- •3.4.3Второе поколение ит
- •3.4.4Третье поколение ит
- •3.4.5Четвертое поколение ит
- •3.4.6Пятое поколение ит
- •3.5. Базовая информационная технология
- •3.6. Предметная информационная технология
- •3.7. Обеспечивающая информационная технология
- •3.8. Функциональная информационная технология
- •3.9. Виды пользовательского интерфейса информационных технологий
- •3.10. Свойства информационных технологий
- •4.Сообщения и сигналы
- •4.1. Кодирование и квантование сигналов
- •4.2. Виды и характеристики носителей и сигналов
- •4.2.1Характеристики сигналов, передаваемых по каналу
- •4.2.2Модуляция сигналов
- •4.2.3Виды и характеристики носителей
- •4.2.4Спектры сигналов
- •4.2.5Периодические сигналы
- •4.2.5.1Тригонометрическая форма
- •4.2.5.2Комплексная форма
- •4.2.5.3Определение погрешности
- •4.2.5.4Спектр
- •4.2.6Непериодические сигналы
- •5.Модуляция и кодирование
- •5.1. Коды: прямой, обратный, дополнительный, модифицированный
- •5.1.1Прямой код числа
- •5.1.2Обратный код числа
- •5.1.3Дополнительный код числа
- •5.1.4Модифицированный код числа
- •5.2. Систематические коды
- •5.3. Контроль по четности, нечетности, по Хеммингу
- •5.3.1Кодирование по методу четности-нечетности
- •5.3.2Коды Хэмминга
- •5.4. Сетевые технологии обработки данных
- •5.4.1Распределенная обработка данных
- •5.4.2Обобщенная структура компьютерной сети
- •5.4.3Классификация вычислительных сетей
- •5.5. Каналы передачи данных и их характеристики
- •5.5.1Обобщенные характеристики сигналов и каналов
- •5.5.2Характеристики канала передачи информации без помех
- •5.5.3Характеристики каналов передачи информации с помехами
- •5.6. Методы повышения помехоустойчивости передачи и приема
- •5.7. Современные технические средства обмена данных и каналообразующей аппаратуры
- •6.Представление информации в цифровых автоматах (ца).
- •6.1. Информационные основы контроля работы цифровых автоматов
- •6.2. Основные принципы помехоустойчивого кодирования
- •6.3. Помехоустойчивость кода
- •6.4. Методы помехоустойчивого кодирования
- •6.4.1Метод контроля четности
- •6.4.2Метод контрольных сумм
- •6.4.3Коды Хэмминга
- •6.4.4Контроль по модулю
- •6.4.5Числовой метод контроля
- •6.4.6Цифровой метод контроля
- •6.4.7Выбор модуля для контроля
- •6.5. Контроль логических операций
- •6.5.1Операции сдвига
- •6.5.2Операция сложения по модулю 2
- •6.5.3Операция логического умножения.
- •6.6. Контроль арифметических операций
- •6.7. Арифметические коды
- •7.1. Основные понятия относящиеся к преобразователям
- •7.2. Уровни цифровой логики
- •7.3. Управляющий выходной сигнал – выходной сигнал «состояние»
- •7.4. Управляющий выходной сигнал строб-импульс
- •7.5. Аналоговые сигналы
- •7.6. Цифроаналоговые преобразователи
- •7.6.1Цифроаналоговое преобразование
- •7.6.2Основные типы цап
- •7.6.2.1Цап со взвешенными резисторами
- •7.6.2.2Цап с цепочкой резисторов типа r—2r
- •7.6.3 Другие типы цап
- •7.7. Аналоговые преобразователи
- •7.7.1 Аналогоцифровое преобразование
- •7.7.2 Основные типы ацп
- •7.7.2.1Двухтактные интегрирующие ацп
- •7.7.2.2Ацп последовательного приближения
- •7.7.3 Другие типы ацп
- •7.7.3.1Преобразователи напряжения в частоту
- •7.7.3.2Параллельные ацп
- •7.8. Факторы применения
- •7.8.1 Характеристики цап
- •7.8.2 Характеристики ацп
- •7.9. Совместимость с системой
- •7.10. Совместимость преобразователей (взаимозаменяемость)
- •8.Позиционные системы счисления
- •8.1. Методы перевода чисел.
- •8.2. Форматы представления чисел с плавающей запятой.
- •8.3. Двоичная арифметика.
- •9.Понятие и свойства алгоритма
- •9.1. Определение алгоритма
- •9.2. Свойства алгоритма
- •9.3. Правила и требования, предъявляемые к построению алгоритма
- •9.4. Типы алгоритмических процессов
- •9.5. Принцип программного управления
- •9.5.1Принципы Джона фон Неймана
- •9.5.2Функциональная и структурная организация компьютера
- •9.6. Выполнение арифметических операций с числами с фиксированной и плавающей запятой
- •9.6.1Коды: прямой, обратный, дополнительный,
- •9.6.2Операция сложения
- •9.6.3Операция умножения
- •9.6.4Операция деления
- •10.Файлы данных
- •10.1. Файловые структуры
- •10.2. Носители информации и технические средства для хранения данных
- •10.3. Организация данных на устройствах с прямым и последовательным доступом
- •11. Вычислительная техника
- •11.1. Древнейшие счетные инструменты
- •11.2. Развитие абака
- •11.3. Логарифмы
- •11.4. Суммирующая машина Блеза Паскаля
- •11.5. Чарльз Бэббидж и его изобретение
- •11.6. Табулятор Холлерита
- •11.7. Машина ц3
- •11.8. Марк I
- •11.9. Эниак
- •11.10. Эдсак
- •11.11. Мэсм
- •11.12. Машина электронная вычислительная общего назначения бэсм-6
- •11.14. Альтаир 8800
- •11.15. Компьютеры Apple
- •12.Основы языка Object Pascal/Delphi
- •12.1. Описание структуры проекта
- •12.2. Описание структуры модуля
- •12.3. Описание элементов программ
- •12.3.1 Элементы языка программирования-алфавит
- •12.3.2 Элементы языка программирования-идентификаторы,константы, выражения
- •13.Выражения на Object Pascal
- •13.1. Целая и вещественная арифметика
- •13.2. Приоритет операций
- •13.3. Встроенные функции. Построение сложных выражений
- •14.Типы данных
- •14.1. Встроенные типы данных. Целые типы. Представление знака числа. Арифметическое переполнение
- •14.1.1Встроенные типы данных
- •14.1.2Целые типы
- •14.1.3Представление знака числа
- •14.1.4Арифметическое переполнение
- •14.2. Вещественные типы. Сопроцессор
- •14.3. Текстовые типы
- •14.4. Логический тип
- •14.5. Оператор присваивания. Совместимость типов по присваиванию
- •15.Ввод-вывод данных
- •15.1. Устройства вывода
- •15.2. Объекты, обеспечивающие вывод данных на экран
- •15.2.1Перечень компонентов ввода и отображения текстовой информации
- •15.2.2Отображение текста в надписях компонентов Label, StaticText и Panel
- •15.2.3Окна редактирования Edit и MaskEdit
- •15.2.4Многострочные окна редактирования Memo и RichEdit
- •15.2.5Группа радиокнопок – компонент RadioGroup
- •15.2.6Ввод и отображение целых чисел — компоненты UpDown и SpinEdit
- •15.2.7Компоненты выбора из списков — ListBox, CheckBox, CheckListBox и ComboBox
- •15.2.8 Таблица строк — компонент StringGrid
- •15.2.9Функция InputBox
- •15.2.10Процедура ShowMessage
- •15.3. Вывод в текстовый файл
- •15.3.1Объявление файла
- •15.3.2Назначение файла
- •15.3.3Вывод в файл
- •15.3.4Открытие файла для вывода
- •15.3.5Ошибки открытия файла
- •15.3.6Закрытие файла
- •15.4. Устройства ввода. Ввод с клавиатуры. Реакция на действия пользователя
- •15.4.1Устройства ввода
- •15.5. Ввод из файла
- •15.5.1Открытие файла
- •15.5.2Чтение данных из файла
- •15.5.3Чтение чисел
- •15.5.4Чтение строк
- •15.5.5Конец файла
- •16.Ветвление
- •16.1. Операции отношения
- •16.2. Логические (булевские) операции
- •16.3. Составной оператор
- •16.4. Оператор ветвления if
- •16.5. Оператор ветвления case
- •Исключительные ситуации
- •17.Циклы
- •17.1. Функции цикла в программе. Циклы с пред- и постусловием
- •17.2. Оператор While. Вечные циклы
- •17.3. Вечные циклы
- •17.4. Оператор repeat. Процедуры inc и dec
- •17.5. Цикл for
- •17.6. Команды break и continue
- •17.7. Вложенные циклы
- •17.8. Примеры задач с циклами
- •18.Массивы
- •18.1. Объявление массива
- •18.2. Операции с массивами
- •18.2.1Вывод массива
- •18.2.2Ввод массива
- •18.2.2.1Использование компонента StringGrid
- •18.2.2.2Использование компонента Memo
- •18.2.3Поиск минимального (максимального) элемента массива
- •18.2.4Поиск в массиве заданного элемента
- •18.2.4.1Алгоритм простого перебора
- •18.3. Ошибки при использовании массивов
- •19.Библиографический список
- •20.Предметный указатель
6.4.5Числовой метод контроля
При числовом методе контроля код заданного числа определяется как наименьший положительный остаток от деления числа на выбранный модуль р:
rA = A-{A/p}p
где в фигурных скобках {} — целая часть от деления числа; А — контролируемое число.
Величина модуля р существенно влияет на качество контроля; если р = q (q — основание системы счисления, в которой выражено число) и имеет место числовой контроль, то контролируется только младший разряд числа и контроль как таковой не имеет смысла; для р = qm справедливы аналогичные соображения, так как если m<n, то опять не все разряды числа участвуют в контроле и ошибки в разрядах старше m вообще не воспринимаются.
При числовом методе контроля по модулю p для определения остатка используют операцию деления, требующую больших затрат машинного времени. Для числового метода контроля справедливы основные свойства сравнений (сложение, умножение сравнений и т. д.). Поэтому, если А ≡ rА(mod p);
В = rB(mod p), где 0≤rA≤p-1; 0≤rB≤p-1, то А + В = rа + rB (mod p). Отсюда
rA+B≡rA + rB(mod p)
Аналогичным образом доказывается справедливость и следующих соотношений:
rA-B≡rA - rB(mod p);
rAB≡rArB(mod p).
6.4.6Цифровой метод контроля
При цифровом методе контроля контрольный код числа образуется делением суммы цифр числа на выбранный модуль:
или
Возможны два пути получения контрольного кода: 1)непосредственное деление суммы цифр на модуль р; 2) суммирование цифр по модулю р.
Второй путь проще реализуется, так как если аi < р , то контрольный код получается только операцией суммирования.
Однако при цифровом методе свойства сравнений не всегда справедливы, и происходит это из-за наличия переносов (заемов) при выполнении арифметических действий над числами. Поэтому нахождение контрольного кода результата операции происходит обязательно с коррекцией.
Пусть заданы числа А и В и соответственно их контрольные коды
;
;
C = A + B.
Найдем
контрольный код
Видимо, когда есть результат операции, тогда найти методом суммирования цифр по модулю не сложно. Какова будет возможность получения через контрольные коды слагаемых ?
Сумму цифр ci числа можно найти, зная цифры ai и bi и количество переносов в каждом разряде. Каждый перенос уносит из данного разряда q единиц и добавляет одну единицу в следующий разряд, т. е. сумма цифр уменьшится на величину q-1 на каждый перенос. Тогда
,
где l — количество переносов, возникших при сложении.
Так
как
;
,
то
.
Подставив эти значения в предыдущую формулу, получим
.
Аналогичными рассуждениями можно показать, что для разности чисел
С = А - В
где s - количество заемов при выполнении операции.
6.4.7Выбор модуля для контроля
Достоинства числового метода контроля — в справедливости свойств сравнений для контрольных кодов, что облегчает контроль арифметических операций; достоинства цифрового метода в возможности достаточно просто получать контрольные коды без значительных затрат времени. Чтобы сохранить эти достоинства, необходимо выполнение условия rA = r’A.
Так
как rа
≡ А(mod
р); r'А
≡ ∑аi(mod p),
имеем
аiqi
≡ ∑аi(mod p),
Это равенство возможно тогда, когда почленно обе части выражения равны: аiqi ≡ аi(mod p), или qi ≡ l(mod p),
Последнее выражение можно получить, если в сравнении q ≡ 1(mod p) возводить обе части в одну и ту же степень. Следовательно, p = 1(mod р), или
q = mp+1,
где т — целое число.
Из предыдущего следует, что
p = (q-1)/т.
В результате получено, что для сохранения условия rA = r'А необходимо наложить ограничения на модуль р.
Анализ показывает, что для двоичной системы счисления нет целочисленного решения. Это значит, что контролируемую информацию надо представлять в некоторой промежуточной системе счисления. Выбор промежуточной системы счисления определяется величиной модуля р.
К модулю р предъявляют следующие общие требования:
величина модуля р должна быть такой, чтобы возникновение любой арифметической или логической ошибки нарушало сравнимость контрольных кодов;
образование контрольного кода должно осуществляться по возможности простыми средствами;
величина модуля р должна быть по возможности небольшой, так как необходимость выполнения контрольных операций ведет к увеличению вспомогательного оборудования.
Ввиду того, что цифровая информация в ЭВМ должна представляться символами двоичного алфавита, для контроля целесообразно перейти к системам счисления с основанием q=2S, где s — некоторое целое положительное число (s ≥ 2). Переход от двоичного представления исходной информации к новому представлению с основанием q=2S осуществляется разбиением информации на группы по S разрядов с последующим суммированием этих групп по модулю р = (2S-1)/т или при т = 1, р = 2S - 1.
В самом деле, если s = 2 , то исходная информация разбивается на диады, при s = 3 — на триады, при s = 4 — на тетрады и т. д.
Свертывание — процесс разбиения кодовой комбинации на группы и получения контрольного кода. Как правило, свертки (свернутые коды) образуются в результате суммирования выделенных групп (диад, триад и т. п.) по модулю р. В теории кодирования показано, что модуль можно выбирать из условия
р = (2S±1)/т.
Рассмотрим частные случаи образования сверток при наиболее распространенных значениях модуля р.
1. Контроль по модулю 3 (m = 1,s = 2, p = 3). Здесь контролируемая информация представляется символами четверичной системы, и свертки образуются суммированием диад по модулю 3. Так как 22 = 1(mod 3), потребуется двухразрядный двоичный сумматор с цепью циклического переноса из старшего разряда в младший.
2. Контроль по модулю 7 (т = 1, s = 3, р = 7) . Здесь контролируемая информация разбивается на триады и представляется символами восьмеричной системы. Так как 23 = 1(mod 7), для получения свертки нужно иметь трехразрядный двоичный сумматор с цепью циклического переноса.
3. Контроль по модулю 5 (т = 1, s = 2, р = 5). Из теории чисел известно, что для того, чтобы число, выраженное в системе с основанием q, делилось на число q + 1, необходимо и достаточно, чтобы разность между суммой цифр, стоящих на четных и нечетных местах, или наоборот, делилась на величину q+1 без остатка.
Из этого правила можно сделать следующий вывод: контрольный код по mod(q + 1) определяется по формуле
где bi, — двоичное изображение цифр в системе с основанием 2S.
Так как, по условию, rа ≤ р-1, то для получения свертки потребуется трехразрядный двоичный сумматор, работающий по модулю 5.