Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОргЭВМиС (3 сем) / Лаба №2 / Контрольные вопросы к 1-2 лабам.docx
Скачиваний:
47
Добавлен:
01.06.2019
Размер:
20.72 Кб
Скачать

Контрольные вопросы к лабораторной №1 ОРГЭВМ

1. В каком коде хранятся целые числа со знаком?

Для представления знаковых целых чисел используются три способа:

1) прямой код;

2) обратный код;

3) дополнительный код.

Все три способа используют самый левый (старший) разряд битового набора для кодирования знака числа: “плюс” кодируется нулем, а “минус” - единицей. Положительные числа в прямом, обратном и дополнительном кодах изображаются одинаково —цифровая часть содержит двоичную запись числа, в знаковом разряде содержится 0.

Прямой код отрицательных чисел

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

Обратный код отрицательных чисел

Получается инвертированием всех цифр двоичного кода абсолютной величины числа, включая разряд знака: нули заменяются единицами, а единицы - нулями.

Дополнительный код отрицательных чисел

Получается образованием обратного кода с последующим прибавлением единицы к его младшему разряду. Заметим, что ноль имеет два представления в прямом и обратном коде, а в дополнительном коде представление нуля единственно. Дополнительный код - наиболее распространённый способ представления отрицательных целых чисел в компьютерах. Он позволяет заменить операцию вычитания на операцию сложения и сделать операции сложения и вычитания одинаковыми для знаковых и беззнаковых чисел, чем упрощает архитектуру ЭВМ.

2. Чем отличаются процессы сдвига влево и вправо для чисел со знаком и беззнаковых?

Беззнаковый:

Логический сдвиг

Сдвиг, при котором уходящий бит исчезает, не влияя на оставшиеся биты, а на месте появившегося бита записывается бит 0.

Со знаком:

Арифметический сдвиг

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

3. Как представляется корректный двоичный код числа типа float (double, long double), имеющего в десятичном виде наименьшее положительное значение, отличное от нуля?

Денормализованные:

float: 0 00000000 00000000000000000000001 (знак, экспонента, мантисса)

double: 0 00000000000 0000000000000000000000000000000000000000000000000001 (знак, экспонента, мантисса)

long double: 0 000000000000000 0 000000000000000000000000000000000000000000000000000000000000001 (знак, экспонента, целая часть, мантисса)

Нормализованные:

float: 0 00000001 00000000000000000000000 (знак, экспонента, мантисса)

double: 0 00000000001 0000000000000000000000000000000000000000000000000000 (знак, экспонента, мантисса)

long double: 0 000000000000001 1 000000000000000000000000000000000000000000000000000000000000000 (знак, экспонента, целая часть, мантисса)

4. Как выглядит десятичный код числа типа float (double, long double), имеющего наименьшее положительное значение, отличное от нуля? Денормализованные: float: 1.401 * 10^-45 double: 4.941 *10^-324 long double: 3.645 * 10^-4951 Нормализованные: float: 1.175 * 10^-38 double: 2.225 * 10^-308 long double: 3.362 *10^-4932