
- •Содержание
- •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.Предметный указатель
11.3. Логарифмы
Термин «логарифм» возник из сочетания греческих слов logos — отношение, соотношение и arithmos — число.
Основные свойства логарифма позволяют заменить умножение, деление, возведение в степень и извлечение корня более простыми действиями сложения, вычитания, умножения и деления.
Логарифмом обозначается обычно loga N. Логарифм с основанием е = 2,718... называется натуральным и обозначается ln N. Логарифм с основанием 10 называется десятичным и обозначается lg N. Равенство у = loga x определяет логарифмическую функцию.
«Логарифм данного числа N при основании а, показатель степени у, в которую нужно возвести число а, чтобы получить N; таким образом,
N = a y».
Изобретателем логарифмов был Непер (Нейпир) (Napier) Джон (1550-1617), шотландский математик.
Потомок старинного воинственного шотландского рода. Изучал логику, теологию, право, физику, математику, этику. Увлекался алхимией и астрологией. Изобрел несколько полезных сельскохозяйственных орудий. В 1590-х годах пришел к идее логарифмических вычислений и составил первые таблицы логарифмов, однако свой знаменитый труд «Описание удивительных таблиц логарифмов» опубликовал лишь в 1614. В конце 1620-х годов была изобретена логарифмическая линейка, счетный инструмент, использующий таблицы Непера для упрощения вычислений. С помощью логарифмической линейки операции над числами заменяются операциями над логарифмами этих чисел.
В 1617, незадолго до своей смерти, Непер изобрел математический набор для облегчения арифметических вычислений. Набор состоял из брусков с нанесенными на них цифрами от 0 до 9 и кратными им числами. Для умножения какого-либо числа бруски располагали рядом так, чтобы цифры на торцах составляли это число. Ответ можно было увидеть на боковых сторонах брусков. Помимо умножения, палочки Непера позволяли выполнять деление и извлечение квадратного корня.
11.4. Суммирующая машина Блеза Паскаля
В 1640 г. попытку создать механическую вычислительную машину предпринял Блез Паскаль (1623—1662).
Существует мнение, что «на идею счетной машины Блеза Паскаля натолкнуло, по всей вероятности, учение Декарта, который утверждал, что мозгу животных, в том числе и человека, присущ автоматизм, поэтому ряд умственных процессов ничем по существу своему не отличается от механических». Косвенным подтверждением этого мнения служит то, что Паскаль поставил перед собой цель создать такую машину. В 18 лет он начинает работать над созданием машины, с помощью которой даже незнакомый с правилами арифметики мог производить различные действия.
Первая работающая модель машины была готова уже в 1642 году. Паскаля она не удовлетворила, и он сразу же начал конструировать новую модель. «Я не экономил,— писал он впоследствии, обращаясь к «другу-читателю»,— ни времени, ни труда, ни средств, чтобы довести ее до состояния быть тебе полезной... Я имел терпение сделать до 50 различных моделей: одни деревянные, другие из слоновой кости, из эбенового дерева, из меди...»
Паскаль экспериментировал не только с материалом, но и с формой деталей машины: модели были сделаны — «одни из прямых стержней или пластинок, другие из кривых, иные с помощью цепей; одни с концентрическими зубчатыми колесами, другие с эксцентриками; одни — движущиеся по прямой линии, другие— круговым образом; одни в форме конусов, другие — в форме цилиндров...»
Наконец в 1645 году арифметическая машина, как назвал ее Паскаль, или Паскалево колесо, как называли ее те, кто был знаком с изобретением молодого ученого, была готова.
Она представляла собой легкий латунный ящичек размером 350X25X75 мм (Рисунок 11 .76). На верхней крышке — 8 круглых отверстий, вокруг каждого нанесена круговая шкала.
Рисунок 11.76 - Машина Паскаля со снятой крышкой
Шкала крайнего правого отверстия разделена на 12 равных частей, шкала соседнего с ним отверстия — на 20 частей, шкалы остальных 6 отверстий имеют десятичное деление. Такая градуировка соответствует делению ливра—основной денежной единицы того времени — на более мелкие: 1 су = 1/20 ливра и 1 денье — 1/12 су.
В отверстиях видны зубчатые колеса, находящиеся ниже плоскости верхней крышки. Число зубьев каждого колеса равно числу делений шкалы соответствующего отверстия (например, у крайнего правого колеса 12 зубьев). Каждое колесо может вращаться независимо от другого на собственной оси. Поворот колеса осуществляется от руки с помощью ведущего штифта, который вставляется между двумя смежными зубьями. Штифт поворачивает колесо до тех пор, пока не наталкивается на неподвижный упор, закрепленный в нижней части крышки и выступающий внутрь отверстия левее цифры 1 круговой шкалы. Если, например, вставить штифт между зубьями, расположенными против цифр 3 и 4, и повернуть колесо до упора, то оно повернется на 3/10 полного поворота.
Поворот
колеса передается посредством внутреннего
механизма машины цилиндрическому
барабану, ось которого расположена
горизонтально. На боковой поверхности
барабана нанесены два
ряда
цифр; цифры нижнего ряда расположены в
порядке возрастания— 0, ..., 9, цифры
верхнего ряда — в порядке убывания—9,
8, ..., 1,0. Они видны в прямоугольных окнах
крышки. Планка, которая помещается на
крышке машины, может передвигаться
вверх или вниз вдоль окон, открывая либо
верхний, либо нижний ряд чисел в
зависимости от того, какое математическое
действие нужно произвести.
В отличие от известных счетных инструментов типа абака в арифметической машине вместо предметного представления чисел использовалось их представление в виде углового положения оси (вала) или колеса, которое несет эта ось. Для выполнения арифметических операций Паскаль заменил поступательное перемещение камешков, жетонов и т. д. в абаковидных инструментах на вращательное движение оси (колеса), так что в его машине сложению чисел соответствует сложение пропорциональных им углов.
Колесо, с помощью которого осуществляется ввод чисел (так называемое установочное колесо), в принципе не обязательно должно быть зубчатым — этим колесом может быть, например, плоский диск, по периферии которого через 36° просверлены отверстия, в которые вставляется ведущий штифт.
Нам осталось познакомиться с тем, как Паскаль решил самый, пожалуй, трудный вопрос,— о механизме переноса десятков. Наличие такого механизма, позволяющего вычислителю не тратить внимания на запоминание переноса из младшего разряда в старший,— это наиболее разительное отличие машины Паскаля от известных счетных инструментов.
На Рисунок 11 .77 изображены элементы машины, относящиеся к одному разряду: установочное колесо N, цифровой барабан I, счетчик, состоящий из 4 корончатых колес В, одного зубчатого колеса К и механизма передачи десятков. Заметим, что колеса В1 В4 и К не имеют принципиального значения для работы машины и используются лишь для передачи движения установочного колеса N цифровому барабану I. Зато колеса В2 и В3 — неотъемлемые элементы счетчика и в соответствии со «счетно-машинной» терминологией именуются счетными колесами. На показаны счетные колеса двух соседних разрядов, жестко насаженные на оси А1 и A2, и механизм передачи десятков, который Паскаль назвал «перевязь» (sautoir). Этот механизм имеет следующее устройство.
Рисунок 11.77 - Элементы машины Паскаля, относящиеся к одному разряду числа
Рисунок 11.78 - Механизм передачи десятков в машине Паскаля
На счетном колесе В1 младшего разряда имеются стержни d, которые при вращении оси A1 входят в зацепление с зубьями вилки М, расположенной на конце двухколенного рычага D1. Этот рычаг свободно вращается на оси А2 старшего разряда, вилка же несет на себе подпружиненную собачку. Когда при вращении оси А1 колесо В1 достигнет позиции, соответствующей цифре б, стержни С1 войдут в зацепление с зубьями вилки, а в тот момент, когда оно перейдет от 9 к 0, вилка выскользнет из зацепления и под действием собственного веса упадет вниз, увлекая за собой собачку. Собачка и протолкнет счетное колесо В2 старшего разряда на один шаг вперед (то есть повернет его вместе с осью A2 на 36°). Рычаг Н, оканчивающийся зубом в виде топорика, играет роль защелки, препятствующей вращению колеса В1 в обратную сторону при поднимании вилки.
Механизм переноса действует только при одном направлении вращения счетных колес и не допускает выполнения операции вычитания вращением колес в обратную сторону. Поэтому Паскаль заменил эту операцию операцией сложения с десятичным дополнением.
Пусть, например, необходимо из 532 вычесть 87. Метод дополнения приводит к действиям:
532 — 87 = 532 — (100—13) = (532 + 13) — 100 = 445.
Нужно только не забыть вычесть 100. Но на машине, имеющей определенное число разрядов, об этом можно не заботиться. Действительно, пусть на 6-разрядной машине выполняется вычитание: 532 — 87. Тогда 000532 + 999913 = 1000445. Но самая левая единица потеряется сама собой, так как переносу из 6-го разряда некуда, деться. В машине Паскаля десятичные дополнения написаны в верхнем ряду цифрового барабана. Для выполнения операции вычитания достаточно передвинуть планку, закрывающую прямоугольные окна, в нижнее положение, сохранив при этом направление вращения установочных колес.
С изобретения Паскаля начинается отсчет времени развития вычислительной техники. В XVII—XVIII вв. один изобретатель за другим предлагают новые варианты конструкций суммирующих устройств и арифмометров, пока, наконец, в XIX в. неуклонно растущий объем вычислительных работ не создал устойчивого спроса на механические счетные устройства и не позволил наладить их серийный выпуск.