Материал: Информатика Лекции 27.03.02

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Раздел 2. Техническая база информатики. Лекции

5-9.

Темы 9-10. Представление данных в компьютере. Арифметические основы информатики.

Арифметические действия в ЭВМ выполняются в двоичной системе счисления. Эта система относится к позиционным системам счисления. Система является позиционной, если удельный вес цифры в числе зависит от позиции этой цифры. Примером непозиционной системы счисления является римская.

В связи с тем, что двоичная система неудобна для человека, компьютер выдает информацию в десятичной системе. В ряде

системных

программ

 

помимо

двоичной

используются

также

восьмеричная и шестнадцатеричная системы счисления.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

8

 

10

 

16

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

1

 

1

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

10

2

 

2

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

11

3

 

3

 

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

100

4

 

4

 

4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

101

5

 

5

 

5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

110

6

 

6

 

6

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

111

7

 

7

 

7

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1000

10

 

8

 

8

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1001

11

 

9

 

9

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1010

12

 

10

 

A

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1011

13

 

11

 

B

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1100

14

 

12

 

C

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1101

15

 

13

 

D

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1110

16

 

14

 

E

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1111

17

 

15

 

F

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

10000

20

 

16

 

10

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Чтобы перевести число из десятичной системы счисления в

любую необходимо осуществлять

последовательные

деления с

остатком

на

основание

системы

счисления,

в

которую

осуществляется

перевод, до

тех

пор,

пока не получится

число,

меньшее основания системы. Тогда ответом будет последовательность остатков, записанная в обратном порядке, начиная с последнего частного.

Информатика 27.03.02

11

Перевод из двоичной системы в восьмеричную или шестнадцатеричную системы или обратно осуществляется не путем деления, а путем замены.

Чтобы перевести число из любой системы счисления в десятичную необходимо пронумеровать разряды числа справа налево начиная с нуля. Результатом будет являться сумма произведений цифры, стоящей в данном разряде, на основание системы в степени, равной номеру разряда.

Чтобы произвести сложение в любой позиционной системе счисления необходимо производить поразрядное сложение так, как это делается в десятичной системе. Если результат в столбце получился меньше основания системы, в которой производятся действия, то он остается без изменения. В противном случае от

этого

результата отнимается основание системы, а в соседний

слева

разряд добавляется единица.

Вычитание в машине заменяется сложением с числом, обратным по знаку вычитаемому. Таким образом, приходится иметь дело с отрицательными числами. Эти числа хранятся в памяти ЭВМ в

дополнительном коде.

 

При хранении чисел со знаком под знак выделяется

самый

левый разряд числа (знаковый разряд). Для положительных

чисел

там хранится нуль, а для отрицательных - 1.

 

Чтобы представить число в дополнительном коде необходимо:

записать соответствующее положительное число в прямом коде;

заменить все единицы на нули, а нули на единицы (обратный код);

по правилу сложения прибавить к обратному коду единицу.

Тема 11. Логические основы информатики.

В 1854 английский математик Джордж Буль опубликовал работу «Исследование законов мышления, базирующихся на математической логике и теории вероятностей». Эта работа дала рождение алгебре логики, или булевой алгебре. Буль первым показал, что существует аналогия между алгебраическими и логическими действиями, так как и те, и другие предполагают лишь два варианта ответов — истина или ложь, нуль или единица. Он придумал систему обозначений и правил, пользуясь которыми можно было закодировать любые высказывания, а затем манипулировать ими как обычными числами. Булева алгебра располагала тремя основными операциями — И, ИЛИ, НЕ, которые позволяли производить сложение, вычитание, умножение, деление и сравнение символов и чисел. Впоследствии идеи Буля нашли свое воплощение в вычислительной технике.

Информатика 27.03.02

12

Особенностью функций, которые используются в булевой алгебре, является то, что все их аргументы и их значения принадлежат множеству «0,1». Булева функция может быть задана таблицей или формулой. Строка из области определения булевой функции называется набором. Задать булеву функцию - это значит сопоставить каждому набору из области определения значение 0 или 1. Построенная таблица называется таблицей истинности булевой функции.

Всякая булева функция от n переменных имеет 2n наборов, а

всего существует 22n

функций

от

n переменных. Часть булевых

функций от одной

и от

двух

переменных носит название

элементарных. К ним, в частности, относятся функции отрицания,

конъюнкции,

дизъюнкции,

эквивалентности,

импликации

и сложения

по модулю два.

 

 

 

Функция

конъюнкции

(логическое «и»,

логическое

умножение,

) принимает значение 1 только тогда, когда оба ее аргумента истинны.

Функция дизъюнкции (логическое «или», логическое сложение,) принимает значение 0 только тогда, когда оба ее аргумента ложны.

Функция импликации ( ) принимает значение 0 только тогда, когда из верной посылки следует неверный результат.

Функция эквивалентности ( ) принимает значение 1 только тогда, когда ее аргументы принимают одинаковые значения.

Функция сложения по модулю два ( ) является обратной к функции эквивалентности.

Две функции называются равными, если их таблицы истинности совпадают.

Базисом называется такое подмножество множества всех булевых функций, что через функции, входящие в это подмножество, можно выразить все остальные булевы функции. Одним из наиболее важных базисов является базис «И, ИЛИ, НЕ». И именно этот базис реализован в вычислительной технике. Одним из способов приведения остальных булевых функций к этому базису является построение совершенной дизъюнктивной нормальной формы, представляющей собой дизъюнкцию конъюнктов (конъюнкт в СДНФ - это логическое произведение всех переменных из области определения, причем каждая переменная может входить в это произведение либо с отрицанием, либо без него), по таблице истинности. Построенная СДНФ, по возможности, должна быть минимизирована.

Для построения СДНФ по таблице истинности необходимо:

выделить наборы, на которых функция принимает значение 1;

Информатика 27.03.02

13

записать эти наборы в виде конъюнктов;

поставить между конъюнктами знаки дизъюнкции.

Для хранения и преобразования одного бита информации используются два вида электронных схем, которые называются цифровыми автоматами. К первому виду относятся цифровые автоматы с памятью, используемые, в частности, для приема, хранения и выдачи другим логическим элементам одного бита информации. Одной из основных разновидностей цифровых автоматов с памятью является триггер.

Для выполнения двоичных арифметических и логических операций служат цифровые автоматы другого вида - комбинационные схемы или логические элементы без памяти. Несколько таких элементов объединяют в микросхемы. В частности, для выполнения сложения из логических элементов образуют электронные схемы, называемые сумматорами и полусумматорами.

Тема 12. История развития вычислительной техники. Поколения компьютеров.

С древнейших времен человек конструирует себе в помощь

различные

приспособления для облегчения вычислений. Еще в V веке

до нашей

эры греки и египтяне использовали абак - доску,

разделенную на полосы, где передвигались камешки или кости.

В 40-х годах XVII века один из крупнейших ученых в истории человечества - математик, физик, философ и богослов Блез Паскаль изобрел и изготовил механическое устройство, позволяющее складывать числа. Механическое устройство, позволяющее не только складывать числа, но и умножать их, было изобретено другим

великим математиком и

философом

- Готфридом

Вильгельмом

Лейбницем в конце XVII века.

 

 

Настоящим переворотом

в счетных

машинах явилось

создание в

1874 г. арифмометра В. Т. Однера. Введенное изобретателем колесо с переменным числом зубьев позволило механически переносить десяток в вышестоящий разряд.

Наряду с устройствами, предназначенными для вычислений, развивались и механизмы для автоматической работы по заданной программе (музыкальные автоматы, шарманки, часы с боем и т.п.). В шарманку, например, помещали диски с по-разному расположенными штырьками - в зависимости от расположения штырьков звучала та или иная мелодия. В ткацком станке Жаккарда (начало XIX века) узор ткани задавался с помощью дырочек в тонких картонных картах (перфокартах). Для смены узора достаточно было по-другому пробить дырочки в перфокарте.

Информатика 27.03.02

14

В 1822 английский математик Чарльз Бэббидж описал машину,

способную

рассчитывать

и печатать

большие

математические

таблицы,

и

сконструировал

машину

для

табулирования, состоявшую

из валиков и шестеренок, вращаемых с помощью

рычага. Машина

могла

производить некоторые

математические

вычисления с

точностью до восьмого знака после запятой. Это был прообраз его разностной машины, к постройке которой он приступил в 1823 году, получив правительственную субсидию для продолжения работ. Разностная машина должна была производить вычисления с точностью до 20 знака после запятой. Постройка машины отняла у Бэббиджа 10 лет, ее конструкция становилась все более сложной, громоздкой и

дорогой.

Она так и не была закончена,

финансирование

проекта

было прекращено.

 

 

Тем

временем Бэббиджем овладела

идея создания

нового

прибора — аналитической машины. Главное ее отличие от разностной машины заключалось в том, что она была программируемой и могла выполнять любые заданные ей вычисления. По существу, аналитическая машина стала прообразом современных компьютеров, так как включала их основные элементы: память, ячейки которой содержали бы числа, и арифметическое устройство, состоящее из рычагов и шестеренок. Бэббидж предусмотрел возможность вводить в

машину инструкции при помощи перфокарт. Однако и эта машина не была закончена, поскольку низкий уровень технологий того времени стал главным препятствием на пути ее создания.

Разностная машина в несколько видоизмененном виде была построена в 1854 году шведским изобретателем Шойцем. В 1991 британскими учеными по спецификации Бэббиджа была построена вторая разностная машина, способная производить вычисления с

точностью до 31 знака после запятой.

 

 

С

машиной

Бэббиджа

связано

появление

профессии

программиста. Первым программистом принято считать Аду Лавлейс, которая создавала программы для работы на этой машине. Несмотря на то, что никто не имел возможности проверить правильность этих программ, впоследствии в честь этого события был назван язык программирования Ада.

В 1888 американский инженер Герман Холлерит сконструировал

электромеханическую

машину,

которая

могла

считывать

и

сортировать

статистические

записи,

закодированные

на

перфокартах.

Эта

машина, названная табулятором,

состояла

из

реле, счетчиков, сортировочного ящика. Данные на каждого человека наносились на перфокарты, почти не отличающиеся от современных, в виде пробивок. При прохождении перфокарты через машину, данные, отмеченные дырочками, снимались путем прощупывания системой игл. Если напротив иглы оказывалось

Информатика 27.03.02

15