Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛК_Информатика_2.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
1.2 Mб
Скачать

Двоично-десятичная система счисления

Входная информация в ЭВМ обычно представляется в десятичной системе счисления, а затем по специальным программам переводится в двоичную. Для того, чтобы обрабатывать десятичные числа в машине, их необходимо представить в форме, удобной для машины. С этой целью производится кодирование каждой десятичной цифры с помощью двоичных элементов. Двоично-десятичное представление является наиболее простым представлением, где каждая десятичная цифра представляется своим четырехразрядным двоичным эквивалентом – «тетрадой». Например – 237,82(10) = 10,0011,0111,,,1000,001(2-10)

Перевод чисел из одной системы счисления в другую.

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

101112 = 1*24 +0*23 +1*22 +1*21 +1*20 =2310

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

Перевод целых чисел.

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

ПРИМЕРЫ на листочке в клеточку.

Перевод дробных чисел.

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

ПРИМЕРЫ на листочке в клеточку.

Двоичная арифметика. Выполнение арифметических операций.

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

0+0=0 0-0=0 0*0=0

0+1=1 1-0=1 0*1=0

1+0=1 1-1=0 1*0=0

1+1=0(1) (11)0-1=1 1*1=1

единица заем из

переноса старшего разряда дает две единицы мл. разряда

При сложении двух чисел надо помнить, что 1+1 дает 0 в данном разряде и передает единицу в старший разряд.

10111,11

11001,10

110001,01

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

11000101

-

10101110

00010111

Умножение двоичных чисел производится с использованием таблиц умножения и сложения.

Деление – с использованием двоичных таблиц вычитания и умножения.

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

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

- представление абсолютной величины и знака отдельно ( прямой код);

- представление отрицательных чисел в дополнительном коде;

- представление отрицательных чисел в обратном коде.

Условно принято обозначать «+»как 0, «-» как 1. Знак располагается в позиции самого старшего разряда. Например, +10 в прямом коде – это 0|1010 пк , а число -10 это 1|1010 пк.

Этот код достаточно часто используется в машинах.

Дополнительный код

Чтобы представить отрицательное число в дополнительном коде, необходимо поменять нули на единицы, а единицы на нули и добавить единицу к самому младшему разряду. Например, число 10 в прямом коде это 0|1010

Дополнительный код получается следующим образом:

1|0101

+ 1

1|0110дк = -10

Обратный код

Чтобы представить отрицательное число в обратном коде, надо заменить все 1 на 0,а все 0 на 1 и поместить 1 в знаковый разряд. Пусть то же число -10. Двоичный эквивалент +10= 0|1010пк откуда получаем обратный код: -10 1|0101 ок.

Представление чисел в компьютере

Целые числа хранятся в памяти с фиксированной запятой. Для хранения целых неотрицательных чисел отводится одна ячейка памяти = 8 битов. Например А2 = 11110000 будет хранится в ячейке памяти следующим образом:

1

1

1

1

0

0

0

0

Максимальное число – это когда во всех ячейках единицы. Для N- разрядного числа это

2N – 1. В восьми битах может храниться от 0 до 255.

Для хранения целых со знаком отводится две ячейки памяти - два байта, т.е.16 битов, причем старший бит (левый) отводится под знак (положительное – 0, отрицательное – 1).

Максимальное положительное ( с учетов выделения одного разряда под знак) в N- разрядном представлении равно 2N-1 – 1.

Для представления отрицательных чисел используется дополнительный код, который позволяет заменить арифметическую операцию вычитания сложением, что упрощает работу процессора и увеличивает его быстродействие. Дополнительный код отрицательного числа А, хранящегося в N ячейках, равен 2N – |А|. В компьютерной N-разрядной арифметике 2N = 0, т.к. действительно запись такого числа состоит из одной единицы и остальные нули, а в N-разрядную ячейку может уместиться только N младших разрядов, т.е. N нулей.

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

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

A = m * qn ,

где m – мантисса числа, q –основание системы счисления, n–порядок числа.

Для единообразия представления чисел с плавающей запятой используется нормализованная форма, при которой мантисса меньше 1, например 555,55 в нормализованном виде = 0,55555 * 103 . .

Число в этом формате занимает в памяти машины 4 (обычная точность) или 8 байтов (двойная точность). Знак порядка

Первый байт ! 2-й байт ! 3-й байт ! 4-й байт

0

1

7

8

15

16

23

24

25

31

Мантисса

Порядок

Кодирование символьной информации.

Для кодирования одного символа необходим 1 байт информации.

Лекция 3. 4. Логические основы ЭВМ.

Логика – ЭТО НАУКА О ФОРМАХ И СПОСОБАХ МЫШЛЕНИЯ.

Основными формами мышления являются: понятие, высказывание и умозаключение.

ПОНЯТИЕ – фиксирует основные, существенные признаки объекта.

ВЫСКАЗЫВАНИЕ – это форма мышления, в котором что-либо утверждается или отрицается о свойствах реальных предметов и отношениях между ними. Высказывание может быть ИСТИННО или ЛОЖНО.

УМОЗАКЛЮЧЕНИЕ – это форма мышления, с помощью которой из одного или нескольких суждений (посылок) может быть получено новое суждение (заключение).

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

Для того, чтобы можно было определить истинность или ложность высказываний, не вникая в их содержание, была придумана алгебра высказываний. В этой алгебре высказывания обозначаются именами логических переменных, которые могут принимать лишь два значения: «истина» (1) и «ложь» (0). В этой алгебре можно производить некоторые логические операции над высказываниями, получая в результате новые составные высказывания .

Существует раздел математики- БУЛЕВА АЛГЕБРА, изучающая логические операции над логическими(«двоичными») переменными. По аналогии с классическими числами над этими переменными могут осуществляться различные операции с использованием логических функций.

Логические функции двух переменных.

2

Имеется 22=16 функций (2- переменные, 2- состояния 0 или 1).

Функции эти называются КОНСТИТУАНТЫ нуля и единицы.

Базовые логические операции И, ИЛИ, НЕ.

И Объединение двух высказываний в одно с помощью союза «И» называется операцией логического умножения или конъюнкцией.

составное высказывание, образованное в результате КОНЪЮНКЦИИ, истинно тогда и только тогда, когда истинны все входящие в него простые высказывания.

А

В

F= A & B

0

0

0

0

1

0

1

0

0

1

1

1

На формальном языке алгебры логики операция конъюнкции обозначается значком «&» или «^ ». Например, F= A & B. Аргументы могут принимать значения 1 или 0 и результат тоже только значения 1 или 0. Значение логической функции F можно определить из таблицы истинности этой функции.

ИЛИ Объединение двух высказываний в одно с помощью союза «ИЛИ» называется операцией логического сложения или дизъюнкцией.

составное высказывание, образованное в результате ДИЗЪЮНКЦИИ, истинно тогда, когда истинно хотя бы одно из входящих в него простых высказываний.

А

В

F= A + B

0

0

0

0

1

1

1

0

1

1

1

1

На формальном языке алгебры логики операция дизъюнкции обозначается значком «+» или «\/ ». Например, F= A + B. Аргументы могут принимать значения 1 или 0 и результат тоже только значения 1 или 0. Значение логической функции F можно определить из таблицы истинности этой функции.

Функция «ИСКЛЮЧАЮЩЕЕ ИЛИ»

, если или , но не одновременно. Еще ее называют «Сумма по модулю 2» или «Функция несовпадения» , обозначается .

НЕ Присоединение частицы «не» к высказыванию называется операцией логического отрицания или инверсией. Инверсия делает истинное высказывание ложным и наоборот, ложное - истинным. На формальном языке отрицание обозначают чертой над аргументом.

Логические выражения. (Дать пример составления логического выражения и по нему – таблицы истинности).

набора

Перем.

1

2

3

4

1

0

1

0

0

1

0

1

с

0

0

1

1

Например, надо вычислить значение логического выражения при заданном наборе исходных переменных:

_______________

( ) , где

(Дать решения для каждого из наборов и на следующей лекции – контрольная работа по таким задачам – на один час.)

Кроме базовых функций, которые мы рассмотрели (И. ИЛИ и НЕ) существуют еще 13 функций от двух аргументов, которые построены на базовых. Рассмотрим две самые часто используемые: ЛОГИЧЕСКОЕ СЛЕДОВАНИЕ (ИМПЛИКАЦИЯ) и ЛОГИЧЕСКОЕ РАВЕНСТВО ( ЭКВИВАЛЕНТНОСТЬ).

СЛЕДОВАНИЕ (ИМПЛИКАЦИЯ) обозначается стрелкой «если А, то Б»

А

В

F= A → B

0

0

1

0

1

1

1

0

0

1

1

1

Составное высказывание, образованной с помощью ИМПЛИКАЦИИ (следования) , ложно тогда и только тогда, когда из истинной предпосылки (первого высказывания) следует ложный вывод (второе высказывание). Докажем методом сравнения таблиц истинности , что операция ИМПЛИКАЦИИ равносильна логическому выражению НЕ А ИЛИ В, т.е. построены на базовых логических функциях:

А

В

⌐ А

⌐ А \/ В

0

0

1

1

0

1

1

1

1

0

0

0

1

1

0

1

РАВЕНСТВО ( ЭКВИВАЛЕНТНОСТЬ) обозначается волнистой чертой ~ «А тогда и только тогда, когда В»

Составное высказывание, образованной с помощью эквивалентности истинно тогда и только тогда, когда оба высказывания одновременно либо ложны , либо истинны.

А

В

F= A ~ B

0

0

1

0

1

0

1

0

0

1

1

1

Рассмотрим законы и теоремы алгебры логики (или Булевой алгебры):

1. = х

2. х + у = у + х

3. х * у = у * х

4. х + у + а = (х+у) + а = х + (у+а)

5. хуа = (ху)а = х(уа)

6. х(у+а) = ху+ха

7. х + уа = (х+у) (х+а)

8. х +х = х

9. х*х = х

10. х + 0 = х

11. х * 1 = х

12. х *0 = 0

13. х + =1

15. х =0

16. х + ху = х

17. х(х+у) + х

18. х + у = х + у

19. х( + у) = ху

20. = * *

21. = + + …

Последние два пункта - общие случаи теоремы Де Моргана, которая звучит так: «Отрицание логической суммы равно логическому произведению отрицаний и отрицание логического произведения равно логической сумме отрицаний.»

Упрощение логических выражений с использованием теорем:

Обычно начинают с поиска следующих форм:

+ + + , где и либо сами логические переменные, либо произведения множеств логических переменных.

Эти структуры можно упростить:

+ = ( + )=

+ = (1+ )=

+ =( + )+ = +( )=

Например: *у* + * * + х * * + *у * а + х*у* =

---------------- =========== ---------------- ========

сгруппируем 1-й и 4-й , 3-й и 5-й и получим:

= *у*( + )+ * * +х ( +у)= у+ +х = (у+ )+х =

= (у+ )+х = у+ +х = у+ ( +х)= у+

Вычислительные процессы в ЭВМ решаются с помощью правильно построенных логических схем, где на входе может быть несколько сигналов высокого (1) и низкого (0) уровня. Чтобы эти схемы упростить, минимизировать затраты и экономические и временные, все первоначальные логические выражения упрощаются, используя выше описанные тождества и законы Булевой алгебры.

Например; Дана схема с четырьмя аргументами – сигналами и выход S = инверсия функции F(a,b,c,d).

Запишем функцию : + В + С + ВС =

объединим 1 и 3й, 2 и 4-й:

= ( +С) + В ( + С) = + В = ( +В) =

F(a,b,c,d)= =

Инверсия этого выражения - = А +D, т.е. схема сводится к виду:

1

А

D

Упрощение логических выражений с использованием теорем:

Обычно начинают с поиска следующих форм:

А + АВ или А + АВ или А + В , где А и В логические переменные. Эти структуры можно упростить:

+ АВ = А( +В) = А

А + АВ = А(1 + В) = А

А + В = (А + АВ) + В = А + (АВ + В) = А + (А + )В = А + В

Бывает необходимость упрощения схемы в обратном порядке, то есть предлагается готовая логическая схема, которую необходимо упростить. для этого по схеме записываются цепочки логических выражений, которые в свою очередь упрощаются уже рассмотренными методами. Значит надо уметь записывать логические выражения по предложенным схемам. НАПРИМЕР.

х

у не х

х

у х

_________________________ ____________ _________ ________ __ _

_ _

( ( х * у ) + х ) + ( ( х + у ) * х ) = у + х +х + х*у = у +1 + х*у = у(х+1) +1=у+1=1 = 0.

Получается при упрощении выражения, что при любых входных сигналах на выходе будет НОЛЬ, то есть эта схема может служить как генератор нуля.

Лекция № 4 5. Основные этапы развития вычислительной техники.