Я познаю мир. Компьютеры и интернет - страница 17
Закодированные в виде числа команды образуют машинные коды. Мы в своих примерах брали эти коды чисто условно. На практике же системы этих кодов составляют тот или иной машинный язык. И они отличаются друг от друга примерно так же, как английский отличается от немецкого. Из одних и тех же букв латинского алфавита составляются слова, иногда они даже очень похожи внешне, но смысл этих слов в различных языках может быть различен. Для каждого народа удобен свой язык, так и машинные языки приспосабливаются к нуждам той или иной конкретной модели ЭВМ. Для какой–то удобнее работать при помощи языка «Бейсик», а для другой подходит только «Паскаль».
Конечно, можно было бы программы составлять прямо в машинных кодах. Первые годы существования ЭВМ программисты так и делали. Однако такой порядок вносит дополнительные трудности в работу людей, составляющих программы, а значит, они чаще ошибаются. Поэтому и были придуманы машинные языки, которые в какой–то мере похожи на обычные языки народов нашей планеты. А там уж машина сама переводит выражения машинного языка в машинные коды, пользуясь для этого специальной программой–переводчиком.
Но и при переходе от языка буквенных выражений к языку цифр, т. е. языку машинных кодов, перевод понятий человеческой логики в логику машинную еще не закончен. Как мы уже говорили, машине оказалось удобнее работать с двоичной системой исчисления, машинные же коды составлены в десятичной. Так машина может еще раз осуществить перевод, записав привычные нам цифры вот таким образом: 1=1, 2=10, 3=11, 4=100 и т. д.
Один двоичный разряд (0 или 1) называется битом; бит содержит наименьшее возможное количество информации. Обычный размер машинного регистра – 16 двоичных разрядов. Наибольшее число, которое может быть в нем записано, – 16 единиц подряд, что в переводе на десятичную систему исчисления означает 65535.
Переход на двоичную систему делает запись любых чисел значительно длиннее, чем в десятичной. Но зато в этом случае достаточно для запоминания числа всего двух состояний электрической схемы – «включено» и «выключено». (В противном случае пришлось бы составлять ячейки из схем, имеющих 10 различных состояний, а это привело бы к значительному усложнению устройств как самих схем, так и всей ЭВМ в целом.)
Два же состояния в электрических цепях могут быть выполнены весьма просто и различными методами. Это может быть и релейная схема, и ламповая, и транзисторная... Последнее время подобные схемы стали выполнять по несколько десятков тысяч одним махом – так появились интегральные схемы. Более подробно обо всех этих технологических тонкостях мы поговорим в следующей главе. А пока давайте разберемся в логике работы таких электрических ключей.
Странная логика
В их основе лежит логическое исчисление, созданное еще в 50–е годы XIX столетия английским математиком Джорджем Булем. Согласно разработанным им правилам, каждому из высказываний приписывают одно из двух возможных значений: «истинно» или «ложно». Кроме того, имеются три связки: «И», «ИЛИ» и «НЕ». Их достаточно, чтобы строить описания нашего мира, скажем, такого типа: «Сегодня я пойду играть в футбол, ЕСЛИ по телевизору не будут показывать мультиков И будет подходящая погода».
Аналогично обстоит дело со связкой «ИЛИ» для высказываний, например, такого рода: «В нашей команде будет хороший вратарь, ЕСЛИ придут играть Витя ИЛИ Вова». Конечно, на футбольное поле могут прийти и оба, и связка «ИЛИ» принимает во внимание и такую возможность. И наконец, проиллюстрируем возможности связки «НЕ»: «Мы, конечно, начнем играть сразу, ЕСЛИ поле НЕ будет занято другими командами».
Схема, поясняющая действие электронных логических ключей
Все эти высказывания можно без особого труда реализовать с помощью электронных схем. Для этого договоримся интерпретировать истинное высказывание как положение «включено» или «1» и соответственно ложное высказывание будет интерпретироваться как «выключено» или «О».
В таком случае высказывание «И» соответствует двум ключам, соединенным последовательно. На приведенной схеме лампочка загорится, ЕСЛИ будет включен ключ А, и ключ В.