Файлы cookie: 0
IP адрес: 3.238.186.43
Версия протокола: HTTP/1.1
Локальный порт: 44858
Статьи
Стандарты разрешения экранов мониторов
Терморезисторы: NTC-термистор, PTC-термистор (позистор). Термостаты...
Чем отличается шлюз от прокси?
Чем отличается шлюз от роутера?
BSoD
Аварийный дамп памяти, путь к дампу памяти, файл с информацией BSoD
Синий экран смерти (BSoD). Причины
История
Общие сведения о персональных компьютерах семейства IBM PC...
Операционная система Windows 95
Навигация: Главная - Статьи - Компьютерная арифметика
Контекст: Б. В. Павлов "Трудись компьютер", Москва ВО АГРОПРОМИЗДАТ, 1991
Прежде чем начать рассказ о работе компьютера, следует немного поговорить о способах, которыми можно представлять и записывать числа. Читателю, конечно, известны способы записи десятичными (арабскими) и римскими цифрами - так называемые системы счисления.
В римской системе числа представляются комбинациями знаков: I, V, X, L и т.д. Скажем, число 4 записывается как IV, а число 6 - VI. В арабской системе используется десять знаков - от 0 до 9, но значение каждого числа определяется не только цифрами, а и местом (разрядом), которое они занимают при записи числа. Эта система называется десятичной потому, что сдвиг любой цифры на один разряд изменяет величнну числа в десять раз (например, 7; 70; 700 или 0.7: 0,07 и т.д.).
Однако основанием для представления чисел может служить не только десятка, а и любое другое число. Так, в двоичной системе счисления используются всего два знака: 1 и 0, причем сдвиг единицы на один разряд изменяет величину числа вдвое. Запись 1 и означает единицу, 10-это уже 2, запись 100-будет 4 и т.д.
Оказалось, что компьютеру наиболее удобно оперировать именно числами, зашифрованными по двоичному принципу. Ведь две цифры, которые используются в этой системе, легко представить электрическими импульсами: 1 - импульс есть, 0 - импульса нет.
Одну двоичную цифру называют бит. Впрочем, с ним мы уже познакомились, когда речь шла о количестве информации, содержащейся в сообщении. Поскольку бит - очень маленькая величина, при оценке вместимости запоминающих устройств ЭВМ в качестве соответствующих единиц измерения принимают байт, содержащий в себе 8 бит, и килобайт, равный 1024 бит. Правда, обычно байт имеет не 8, а 9 двоичных разрядов. Дополнительный разряд используется как контрольный.
С числами, представленными в двоичной системе, можно производить те же действия, что и с десятичными числами. Таблица сложения двоичных чисел имеет такой вид:
0 + 0 = 0 0 + 1 = 1 1 + 0 = 1 1 + 1 = 10
Для наглядности можно представить себе конторские счеты, только на прутках у них нанизано уже не по десять, а лишь по две костяшки. Скажем, операция 5 + 3 = 8 в двоичной системе будет: 0101 +0011 = 1000.
Очень проста в этой системе таблица умножения:
0 x 0 = 0 0 x 1 = 0 1 x 0 = 0 1 x 1 = 1
Вообще говоря, машинная двоичная арифметика значительно проще школьной десятичной. Конечно, при ее использовании возникает необходимость производить довольно громоздкие действия по переводу чисел из одной системы счисления в другую, но ведь это автоматически выполняет компьютер, и пользователю, в сущности, нет заботы, какие операции машина производит с двоичными числами, поскольку и та информация, которая вводится в ЭВМ, и та, которая из нее выводится в форме готового решения задачи, представлена в привычной для нас десятичной системе счисления.
Современный компьютер производит действия не только с числами, но и с буквами, словами и целыми фразами. В него можно вводить текстовую информацию, в виде же текста он выдает результат. Так бывает, например, когда ЭВМ используют для перевода литературы с одного языка на другой. И в обрабатываемой компьютером управленческой документации также много текстовой формы записи. Буквы, слова и фразы кодируются в ЭВМ числами в двоичной системе, то есть циркулируют в его блоках в виде электрических импульсов.
Но компьютер не только и не столько автомат-вычислитель, он прежде всего устройство для обработки весьма разнообразной и разнородной информации. Помимо арифметических действий, ему приходится оперировать со всяческими высказываниями, производить с ними логические действия, сходные с теми, которые обычно приходится выполнять человеку, занятому рассуждениями. Способность "рассуждать" - одна из основных характерных особенностей ЭВМ, отличающих их от других технических устройств и позволяющих усиливать и расширять творческие, интеллектуальные возможности человека. Однако поскольку компьютер-все-таки машина, процесс "рассуждения" у него должен быть строго формализован. Свободное блуждание мыслей, которому нередко предаются люди, ему противопоказаны. У него своя - машинная, формализованная, математизированная логика, благодаря чему процесс рассуждений сводится к последовательности определенных стандартных операций.
Логика - это наука о формах и способах мышления, о правилах построения одних утверждений из других. Она изучает формы и законы рассуждений. Кстати, о существовании таких законов знали еще в древнем мире. Строгую систему логики, которой пользуются и поныне, разработал более двух тысяч лет назад древнегреческий философ Аристотель.
Правила логики очень похожи на правила арифметики. И действительно, английскому математику Джону Булю удалось разработать своеобразную алгебру, которую позднее стали называть математической логикой или исчислением высказываний. Здесь используется тот же язык формул, что издавна применяется и в математике, а логические действия почти ничем не отличаются от арифметических.
В математической логике оперируют с высказываниями, которые обычно обозначают буквами А, В, С и т.д. Например, для руководителя хозяйства таким высказыванием может быть телефонный звонок инженера: "Сегодня вышли из строя два трактора". Высказывания оценивают только по их истинности или ложности и в первом случае его припимают за единицу, а во втором-за нуль. Тогда, если сообщение о числе аварийных тракторов соответствует действительности, А = 1, если же вкрались ошибка и сведения ложны, то А = 0.
Из нескольких высказываний можно составить новое, которое будет истинным или ложным в зависимости от тех же качеств входящих в него высказываний, а также от тех действий, которыми они подвергаются при составлении сложного высказывания. И все это представляется в виде математической записи. Как и в обычной арифметике, логические формулы включают в себя несколько элементарных действий (сложение, вычитание, умножение и т. д.) и последовательность их выполнения.
Логическое сложение (дизъюнкция, она же логическая функция "ИЛИ") двух высказываний обозначается так: A \/ В = С. Соответствующая таблица вычисления аналогична той, что приведена ранее для сложения двоичных чисел:
0 \/ 0 = 0 1 \/ 0 = 1 0 \/ 1 = 1 1 \/ 1 = 1
Значит, сложное высказывание, полученное путем логического сложения, ложно только в одном случае-когда ложны оба составляющих его высказывания, ну а истинно, если истинны оба или хотя бы одно из них. Обратимся к упрощенному примеру из близкой нам области и обозначим А высказывание: "Трактор имеет повышенный расход картерной смазки". В - "Выпускной дым его двигателя синего цвета". С - "Маслосъемные кольца двигателя изношены". Тогда формулу А \/ В = С можно прочитать так: "Если трактор имеет повышенный расход картерной смазки или выпускной дым его двигателя синего цвета, то маслосъемные кольца двигателя изношены".
Логическое умножение (коньюнкция, она же логическая функция "И") - это такое сложное высказывание, которое истинно голько в одном случае-когда истинны вес составляющие его высказывания. Логическое умножение записывается А /\ В = С и имеет следующую таблицу:
0 /\ 0 = 0 1 /\ 0 = 0 0 /\ 1 = 0 1 /\ 1 = 1
Если трактор представить как систему из трех основных блоков: двигателя, трансмиссии и ходовой части, и обозначить А высказывание: "Двигатель трактора исправен"; B - "Ero трансмиссия исправна"; С - "Его ходовая часть исправна"; Д - "Трактор исправен", то формулу А /\ В /\ С = Д можно прочитать так: "И двигатель, и трансмиссия, и ходовая часть трактора исправны, поэтому трактор исправен". Достаточно ложности хотя бы одного из составляющих этого утверждения, чтобы ложным оказалось и все заключение.
Все логические операции (а помимо рассмотренных, есть еще и несколько других) легко реализуются с помощью электрических и электронных схем. Из отдельных логических операций можно составить различные их комбинации. Проектирование каждого блока компьютера начинается с разработки логической формулы всех его действий, которые он должен выполнять. Таким образом, математическая логика служит основой теории ЭВМ. Она позволяет анализировать электронные схемы компьютера и искать возможности их оптимизации.