kkk (восстановлен)
.docxМинестерство образования и науки Российской Федерации
ИРКУТСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ
кафедра Автоматизированных систем
Контрольная работа
по ИНФОРМАТИКЕ
Тема: «Представление чисел в памяти ЭВМ»
Выполнил студент группы |
ИСТб-14-1 |
|
|
|
Журавлева Н. А. |
|
шифр группы |
|
подпись |
|
И. О. Фамилия |
Дата: ______________
Иркутск 2015
Вариант 16
Задание 1
Представить в памяти ЭВМ числа согласно варианту, приведенному в таблице 1. Для представления целых чисел при выборе формата учитывать знак числа. Для представления вещественных чисел обратить внимание на количество разрядов для записи порядка.
Вещественное число:
Число |
Формат числа |
Количество разрядов для записи порядка |
181,67 |
одинарный |
7 |
1 |
8 |
1 |
2 |
|
|
|
|
|
|
|
|
|
|
-1 |
8 |
0 |
9 |
0 |
2 |
|
|
|
|
|
|
|
|
|
|
1 |
-9 |
0 |
4 |
5 |
2 |
|
|
|
|
|
|
|
|
|
|
0 |
-4 |
4 |
2 |
2 |
2 |
|
|
|
|
|
|
|
|
|
|
1 |
-2 |
2 |
1 |
1 |
2 |
|
|
|
|
|
|
|
|
|
|
0 |
-1 |
0 |
5 |
2 |
|
|
|
|
|
|
|
|
|
|
|
1 |
-4 |
2 |
2 |
|
|
|
|
|
|
|
|
|
|
|
1 |
-2 |
1 |
|
|
|
|
|
|
|
|
|
|
|
|
0 |
|
18110=101101012
|
6 |
7 |
* |
2 |
|
1 |
3 |
4 |
* |
2 |
|
0 |
6 |
8 |
* |
2 |
|
1 |
3 |
6 |
* |
2 |
|
0 |
7 |
2 |
* |
2 |
|
1 |
4 |
4 |
|
|
0,6710=0,101012
Число 181,6710=10110101,101012
Нормализованное число 0, 1011010110101*21000
m=0, 1011010110101
p=1000
Под запись порядка выделяется 7 зарядов (битов). Формат числа одинарный – выделяется 4 байт памяти.
4 байт = 32 бита
Число положительное, поэтому прямой, обратный и дополнительный кода совпадают.
31 |
30 |
29 |
28 |
27 |
26 |
25 |
26 |
24 |
23 |
22 |
21 |
20 |
19 |
18 |
17 |
16 |
15 |
14 |
13 |
12 |
11 |
… |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
0 |
1 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
0 |
… |
1 |
1 |
Ответ: 181,6710=0:0:0001000:10110101101010...02
Целое число:
Число |
Формат числа |
-259 |
2 |
2 |
5 |
9 |
2 |
|
|
|
|
|
|
|
|
|
|
|
|
-2 |
5 |
8 |
1 |
2 |
9 |
2 |
|
|
|
|
|
|
|
|
|
|
|
1 |
-1 |
2 |
8 |
6 |
4 |
2 |
|
|
|
|
|
|
|
|
|
|
|
|
1 |
-6 |
4 |
3 |
2 |
2 |
|
|
|
|
|
|
|
|
|
|
|
|
0 |
-3 |
2 |
1 |
6 |
2 |
|
|
|
|
|
|
|
|
|
|
|
|
0 |
-1 |
6 |
8 |
2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
0 |
-8 |
4 |
2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
0 |
-4 |
2 |
2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
0 |
-2 |
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0 |
|
25910=1000000112
Формат числа 2, поэтому выделяют 15 бит в памяти под число и 1 бит под знак.
Прямой код:
15 |
14 |
13 |
12 |
11 |
10 |
9 |
8 |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
Обратный код:
15 |
14 |
13 |
12 |
11 |
10 |
9 |
8 |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
Дополнительный код:
15 |
14 |
13 |
12 |
11 |
10 |
9 |
8 |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
1 |
Ответ: -25910=1:1111110111111012
Задание 2
Выполнить арифметические операции над двоичными числами с плавающей точкой в дополнительном коде: С=А+В.
В таблице 2 приведены десятичные значения чисел А и В. С данными числами провести необходимые действия с пошаговой детализацией всех этапов. Вычисления и перевод чисел произвести с точностью до 5 знака после запятой. Полученный результат перевести в десятичную систему счисления
А |
В |
2,830 |
-1,559 |
Перевод числа А в двоичный код:
2 |
2 |
||
-2 |
1 |
||
0 |
|
||
|
8 |
3 |
|
* |
2 |
||
1 |
6 |
6 |
|
* |
2 |
||
1 |
3 |
2 |
|
* |
2 |
||
0 |
6 |
4 |
|
* |
2 |
||
1 |
2 |
8 |
|
* |
2 |
||
0 |
5 |
6 |
|
|
|
А2=10,110102
Нормализуем число:
А=0,1011010*2+10
Переводим число В:
1 |
2 |
|
0 |
|
5 |
5 |
9 |
|
* |
2 |
|
1 |
1 |
1 |
8 |
|
* |
2 |
|
0 |
2 |
3 |
6 |
|
* |
2 |
|
0 |
4 |
7 |
2 |
|
* |
2 |
|
0 |
9 |
4 |
4 |
|
* |
2 |
|
1 |
8 |
8 |
8 |
|
|
|
В2=-01,100012
Нормализуем число:
В=-0,110001*201
Сравниваем порядки А и В:
Δр=ра-рв=ра+(-рв)
ра: прямой, обратный, дополнительный кода: 0:11
рв: прямой, обратный, дополнительный кода: 0:01
-рв: прямой код: 1:01
обратный код: 1:10
дополнительный код: 1:11
Δр=
+ |
0 |
1 |
1 |
1 |
1 |
1 |
|
|
0 |
1 |
0 |
Порядок числа А больше на 102
Выравниваем порядки:
А=0,1011010*210
В=-0,0110001*210
m числа А:
прямой, обратный, дополнительный кода
0 |
1 |
0 |
1 |
1 |
0 |
1 |
0 |
m числа В:
Прямой код
1 |
0 |
1 |
1 |
0 |
0 |
0 |
1 |
Обратный код
1 |
1 |
0 |
0 |
1 |
1 |
1 |
0 |
Дополнительный код
1 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
Находим m числа С:
+ |
0 |
1 |
0 |
1 |
1 |
0 |
1 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
|
1 |
0 |
0 |
1 |
0 |
1 |
0 |
0 |
1 |
Число положительное, переводов не требует
m=0:0101001
p=0:10
С2=0101001*210
Переводим результат в десятичную систему счисления:
С2=1,01001
12=1*20=110
0,010012=1*2-2+1*2-5=0,2812510
С10=1,28125
Ответ: С2=0101001*210; С10=1,28125