Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Сборник задач по дисциплине «Информатика» для ВУЗов. Методические указания к проведению практических занятий по дисциплине «Информатика», для студенто
.pdf
21
Практическая работа № 3
«Арифметические основы работы ЭВМ»
1. Цель работы
Изучить арифметические операции.
2. Связь с другими темами практических работ
Данная практическая работа является фундаментом для практических работ, связанных с криптографией и стеганографией. Знание арифметических основ необходимо для понимания принципа работы ЭВМ.
3. Теоретические сведения и расчётные формулы
Правила арифметики во всех позиционных СС аналогичны.
Пример 1. Выполнить операцию арифметического сложения в дво-
ичной системе счисления.
Решение.
. . . . .
13 01101
+ 00111
+ 7
20 10100
10 2
ЭВМ чаще вс
ных целей при рассмотрении правил выполнения арифметических операций будем использовать малую разрядность.
Пример 2. Выполнить операцию арифметического сложения двух
. . . . . .
55,25 0110111.01
+ 19,5
74,75 1001010.11
10 2
ния многоразрядных двоичных чисел.
его используются 32-,
+ 0010011.10
Точками показаны переносы.
В устройствах, реализующих операцию арифметического сложения двоичных
чисел, операнды представляют числами определённой разрядности (одинаковой для
обоих операндов). При этом неиспользуемые
старшие разряды заполняются нулями.
Следует заметить, что в реальных
64-разрядные сетки. Однако для учеб-
вещественных чисел в двоичной системе счисления.
Решение.
Результаты сложения двух чисел показаны на рисунке. При сложении вещественных чисел в об
случае перено
дробной части числа в целую часть.
Рассмотрим правило умноже-
с осуществляется и из
щем

22
Умножение двоичных многоразрядных чисел производится путём образования частичных произведений и последующего их суммирования. Каждое частичное произведение равно нулю, если в соответствующем разряде множителя стоит 0, или равно множимому, сдвинутому на соответствующее число разрядов влево, если в разряде множителя стоит 1.
Таким образом, операция умножения многоразрядных двоичных чисел внутри ЭВМ сводится к операции сдвига и сложения. Положение точки, отделяющей целую часть от дробной части, определяется так же, как и
при умножении десятичных чисел.
Пример 3. Перемножить в двоичной СС числа 7,5D и 5D.
Решение.
7,5
x 5
37,5
10
111.1
x 101
1111
+ 0000
1111 .
100101.1
2
множимое
x множитель
1-е част. произв.
+ 2-е част. произв.
3-е част. произв.
п р о и з в е д е н и е
.
В рассмотренном пр
имере вто
рой двоичный разряд множителя равен
нулю, поэтому второе частичное произведение также равно нулю.
Пример 4. Выполнить деление в двоичной СС десятичного числа
65D на число 5D.
Полученный результат 1101B = 13D свидетельствует о верности
выполненной операции деления.
В вычислительной технике, с целью упрощения реализации арифметических операций, применяют специальные коды. За счёт этого облегчается определение знака результата операции, а операция вычитания чисел
сводится к арифметическому сложению. В результате упрощаются устрой-

23
ства, выполняющие арифметические операции. Для этого применяют прямой, обратный и дополнительный коды.
Прямой двоичный код Р
(х) — это такое представление двоичного
пр
числа х, при котором знак «+» кодируется нулём в старшем разряде числа,
а знак «–» — единицей. При этом старший разряд называется знаковым.
Остальные разряды двоичного числа называются значащими.
Например, числа +5D и –5D, представленные в прямом четырёхразрядном двоичном коде, выглядят так: +5D = 0'101B; –5D = 1'101B. Здесь
апострофом условно (для удобства определения знака) отделен
разряды. Это по
Обратный код Р
правилу:
зволяет не записывать все числа в разрядной сетке.
(х) получается из прямого кода по следующему
обр
0' P
Р
(х) =
обр
1' P
(х), при х 0
пр
(х), при х 0.
пр
ы знаковые
Из приведённого выражения видно, что обратный код для положительных чисел совпадает с прямым кодом. Чтобы представить отрицательное двоичное число в обратном коде, нужно поставить в знаковом разряде
1, во всех значащих разрядах заменить 1 на 0, а 0 на 1. Такая операция называется инверсией и об
означается гори
зонтальной чертой над инверти-
руемым выражением.
Пример 5. Получить обратный код для числа х = –11D.
Решение.
(х) = 1'10112
Р
пр
Р
(х) = 1'01002.
обр
Считается, что здесь числа представлены пятью разрядами. Из рассмотренного примера видно, что обратный код для положительных чисел
совпадает с прямым, а для отрицательных чисел получается инверсией (переворотом) всех разрядов, кроме знакового разряда.
Дополнительный код Р
Из выражения видно, что дополнительный код положительного чис-
0' P
Р
(х) =
доп
1' P
(х ) образуется следующим образом:
доп
(х), при х 0
пр
(х) + 1, при х 0.
пр
ла совпадает с прямым кодом, а для отрицательного числа получается путём инверсии всех значащих разрядов и добавлением единицы к младшему
разряду результата.
Дополнительный код отрицательного числа может быть получен из

24
обратного кода путём прибавления 1 к младшему разряду обратного кода
(естественно, с учётом переносов между разрядами).
xPxP
обрдоп
.1)()(
Пример 6. Получить дополнительный код для числа х = –14D.
Решение.
(х) = 1'11102 прямой код
Р
пр
Р
(х) = 1'00012 обратный код
обр
Р
(х ) = 1'00102 дополнительный код.
доп
В таблице представлены прямые, обратные и дополнительные коды
чисел в диапазоне от –7D до +7D.
Десятичное
(х) Р
Р
пр
(х) Р
обр
доп
(х )
число х
0 0'000 0'000 0'000
1 0'001 0'001 0'001
2 0'010 0'010 0'010
3 0'011 0'011 0'011
4 0'100 0'100 0'100
5 0'101 0'101 0'101
6 0'110 0'110 0'110
7 0'111 0'111 0'111
-0 1'000 1'111 —
-1 1'001 1'110 1'111
-2 1'010 1'101 1'110
-3 1'011 1'100 1'101
-4 1'100 1'011 1'100
-5 1'101 1'010 1'011
-6 1'110 1'001 1'010
-7 1'111 1'000 1'001
Рассмотрим правило сложения двоичных чисел в дополнительном коде.
При алгебраическом сложении двоичных чисел положительные
слагаемые представляют в прямом коде, а отрицательные слагаемые —
в дополнительном коде, производят арифметическое суммирование этих
кодов, включая разряды знаков, которые при этом рассматривают как
старшие разряды. При возникновении переноса из разряда знака единицу переноса отбрасывают. В результате получают алгебраическую сумму в прямом коде, если эта сумма п
коде, — если сумма отрицательная.
оложи
тельная, и в дополнительном

Напомним, что алгебраическое сложение — это сложение, в котором
могут участвовать как положительные, так и отрицательные числа.
Пример 7. Выполнить алгебраическое сложение с использованием
дополнительного кода для чисел х
= 7D и х2 = –3D.
1
Решение.
Необходимо найти сумму: y = x
Учитывая, что x
так как x
P(y) = Р
Р
Р
Р
Р
< 0, то число x2 нужно перевести в дополнительный код.
2
пр
(x1) = 0'111В
пр
(x2) = 1'011B
пр
(х2) = 1'100B
обр
(x2) = 1'101B.
доп
1
(x1) + Р
> 0, это число нужно представить в прямом коде, а
(x2).
доп
+ x2.
1
. . .
0'111
P(y) = + 1'101
0'100
2
Так как результат положителен (в знаковом разряде P(y) — 0), зна-
чит, он представлен в прямом коде Р
(y) =0'100B. После перевода двоич-
пр
ного числа в десятичную СС получим ответ: y = +4D.
Пример 8.
Выполнить алгебраическое сложение чисел х
= 8D и х2 = –13D с ис-
1
пользованием дополнительного кода.
Решение.
Необходимо найти сумму: y = x
Число x
нужно представить в прямом коде, а x2 — в дополнительном
1
+ x2.
1
коде.
25

26
P(y) = Р
Р
Р
Р
Р
пр
(x1) = 0'1000В
пр
(x2) = 1'1101B
пр
(х2) = 1'0010B
обр
(x2) = 1'0011B.
доп
(x1) + Р
доп
(x2).
0'1000
P(y) = + 1'0011
1'1011
2
В знаковом разряде стоит единица, и, значит, результат получен в
дополнительном коде. Для перехода от дополнительного кода
(y) = 1'1011B
P
доп
к прямому коду Р
(y) необходимо выполнить следующие преобразования:
пр
Р
обр
(y) = Р
(y) – 1 = 1'1011B – 1 = 1'1010B,
доп
Р
(y) = Р
пр
(y) = 1'1010B = 1'0101B.
обр
Переходя от двоичной СС к десятичной СС, получим ответ: y = –5D.
Пример 9. Выполнить алгебраическое сложение с использованием
дополнительного кода для чисел х
= – 6D и х2 = –17D.
1
Решение
Необходимо найти сумму: y = x
Числа x
P(y) = Р
Р
пр
Р
обр
Р
доп
Р
пр
Р
обр
Р
доп
и x2 нужно представить в дополнительном коде.
1
доп
(x1) + Р
доп
(x2).
(x1) = 1'00110В
(х1) = 1'11001B
(х1) = 1'11010B
(x2) = 1'10001B
(х2) = 1'01110B
(x2) = 1'01111B.
+ x2.
1
1'11010
P(y) = + 1'01111
1'01001
2
В знаковом разряде стоит единица, и, значит, результат получен в
дополнительном коде. Для перехода от дополнительного кода
(y) = 1'01001B
P
доп
к прямому коду Р
(y) необходимо выполнить следующие преобразования:
пр
Р
обр
(y) = Р
(y) – 1 = 1'01001B – 1 = 1'01000B,
доп
Р
(y) = Р
пр
(y) = 1'01000B = 1'10111B.
обр
Переходя от двоичной СС к десятичной СС, получим ответ: y = –
23D.

27
4. Задания для выполнения практической работы
«Арифметические основы работы ЭВМ»
4.1. Определить сигналы F на выходе арифметико-логического уст-
ройства АЛУ) и значение переноса в пятый разряд С
операнды А и В (десятичная система счисления), а значение переноса из
предыдущего разряда составляет С
= 1, причём АЛУ выполняет арифме-
0
тико-логическую операцию, указанную в таблице. Выходной сигнал F следует представить в шестнадцатеричной системе счисления.
Таблица 3.1.
Задача Операнд А Операнд В Операция
, если используются
4
1 2 9
2 3 8
3 4 7
4 5 6
5 6 5
6 7 4
7 8 3
8 9 2
9 1 3
10 8 5
11 7 2
12 6 3
13 5 7
14 4 9
15 3 5
16 2 7
CBABABAF )()()(
o
CBABABAF )()()(
o
CBABABAF )()()(
o
CBABABAF )()()(
o
CBABABAF )()()(
o
CBABABAF )()()(
o
CBABABAF )()()(
o
CBABABAF )()()(
o
CBABABAF )()()(
o
CBABABAF )()()(
o
CBABABAF )()()(
o
CBABABAF )()()(
o
CBABABAF )()()(
o
CBABABAF )()()(
o
CBABABAF )()()(
o
CBABABAF )()()(
o

28
4.2. Выполнить операцию алгебраического сложения чисел х
и х2 в
1
дополнительном коде.
Таблица 3.2.
Задача Число х
Число х2 Задача Число х1 Число х2
1
1 10 5 17 -190 100
2 11 7 18 195 -90
3 12 9 19 -200 80
4 13 11 20 205 -70
5 14 13 21 -210 60
6 15 15 22 215 -50
7 16 17 23 -220 40
8 17 19 24 225 -30
9 10 -5 25 -190 -100
10 11 -7 26 -195 -90
11 12 -9 27 -200 -80
12 13 -11 28 -205 -70
13 14 -13 29 -210 -60
14 15 -15 30 -215 -50
15 16 -17 31 -220 -40
16 17 -19 32 -225 -30
Домашнее задание
1. Сформировать дополнительный код для пятиразрядного отрицательного десятичного числа –ABCDE. Цифры A, B, C, D, E являются последними цифрами зачётки (студенческого билета).
Например, зачётка 4376534526.
Значит, десятичное число -34526 (со знаком минус). Нужно получить
дополнительный код этого числа.
2. Сформировать число х
Сформировать отрицательное число х
из четырёх последних цифр зачётки.
1
из четырёх последних цифр зачётки,
2
взятых в обратном порядке.
Например,
= 1234
х
1
= -4321
х
2
Выполнить алгебраическое сложение чисел в дополнительном коде.
Самостоятельно выбрать необходимую разрядность двоичных чисел.

29
Практическая работа № 4
«Представление данных в ЭВМ»
1. Цель работы
Изучить структуру данных в ЭВМ.
2. Связь с другими темами практических работ
Данная практическая работа опирается на первую практическую ра-
боту и необходима для понимания принципа работы ЭВМ.
3. Теоретические сведения и расчётные формулы
При проведении математических расчётов числа в ЭВМ могут быть
представлены с помощью естественной и нормальной форм записи.
Примером записи в естественной форме может служить вещественное число 173,856. Для записи числа в естественной форме машинное слово
(операнд) делится на две части (на два поля). Первое поле отводится для
записи целой части числа, второ
Старший разр
Разряды машинного слова нумеруются справа – налево, начиная с нуля. В
вычислительной технике принято отделять целую часть числа от дробной
части точкой. Так как положение точки между целой и дробной частями
числа чётко определено, то такое пр
лением с фиксированно
На следующем рисунке дана иллюстрация формата чисел с фиксированной точкой.
яд машинного слова используется для указания знака числа.
й точкой.
е — для записи дробной части числа.
едставление чисел называют представ-
Недостатком формы с фиксированной точкой является малый диапазон представления чисел. В современных ЭВМ в этой форме записывают
только целые числа. При этом отпадает необходимость отводить поле для

30
записи дробной части числа (см. следующий рисунок).
Разряд кода числа, в котором размещается знак, называется знаковым разрядом. Знаковый разряд размещается в старшем разряде машинного
слова. Знак положительного числа кодируется двоичной цифрой 0, а знак
отрицательного числа – цифрой 1.
Нормальная форма записи числа n имеет следующий вид:
p
,
dmn
где m — мантисса числа; р — порядок; d — основание системы
счисления.
Приведём пример записи числа в нормальной форме:
2
10541.1 n
.
Порядок p изменяет местоположение точки в мантиссе. В зависимости от значения порядка p точка перемещается (плавает) по мантиссе. Например, пусть m = 0.3, основание системы счисления d = 10, а порядок p
будем брать разным:
3221
.300103.0;30103.0;003.0103.0;03.0103.0
Рассматриваемая форма представления чисел называется формой с
плавающей точкой. Из приведённого примера видно, что благодаря изменению порядка точка перемещается (плавает) по мантиссе. При этом если
порядок отрицательный, точка смещается по мантиссе влево, а если положительный, то - вправо.
В нормальной форме машинное слово делится на два поля. В одном
поле записывается мантисса числа, а во второ
числа. Следующий ри
сунок иллюстрирует форму числа с плавающей точ-
м — указывается порядок
кой на примере 32-х разрядного машинного слова.
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
