Тема: Представление числовой информации в ЭВМ.
Цель работы: познакомиться с алгоритмами представления десятичных целых, отрицательных и вещественных чисел в памяти ЭВМ.
Методические указания.
Все числовые данные хранятся в машине в двоичном виде, т.е. в виде последовательности нулей и единиц, однако формы хранения целых и действительных чисел различны.
Для представления чисел в памяти ПК используются два формата:
-формат с фиксированной точкой (запятой) целые числа;
-формат с плавающей точкой (запятой) вещественные числа.
Представление целых чисел
Множество целых чисел, представленных в ЭВМ, ограничено. Диапазон значений зависит от размера ячеек памяти, используемых для их хранения.
Для целых чисел существуют два представления:
-беззнаковое;
-со знаком.
В К-разрядной ячейке может храниться 2к различных значений целых чисел.
Диапазон значений целых беззнаковых чисел (только положительные):
от 0 до 2к - 1
для 16-разрядной ячейки от 0 до 65535
для 8-разрядной ячейки от 0 до 255
Диапазон значений целых чисел со знаком (и отрицательные, и положительные в равном количестве):
от -2к-1 до 2к-1-1
для 16-разрядной ячейки от -32768 до 32767
для 8-разрядной ячейки от -128 до 127
Чтобы получить внутреннее представление целого положительного числа N, хранящегося в К-разрядной ячейке, необходимо:
1. перевести число N в двоичную систему счисления;
2. полученный результат дополнить слева незначащими нулями до К разрядов.
|
|
Пример:
Получить внутреннее представление целого числа 1607 в 2-х байтовой ячейке.
Решение:
N=1607=110010001112.
Внутреннее представление этого числа будет: 0000 0110 0100 0111. Шестнадцатеричная форма внутреннего представления числа: 0647.
Для представления целого отрицательного числа используется дополнительный код.
Дополнительным кодом двоичного числа X в N-разрядной ячейке является число, дополняющее его до значения 2N.
Получение дополнительного кода:
1. получить внутреннее представление положительного числа N (прямой код);
2. получить обратный код этого числа заменой 0 на 1 или 1 на 0 (обратный код);
3. к полученному числу прибавить 1.
Положительное число в прямом, обратном и дополнительном кодах не меняют свое изображение.
Использование дополнительного кода позволяет заменить операцию вычитания на операцию сложения.
A-B=A+(-B).
Процессору достаточно уметь лишь складывать числа.
Старший, К-й разряд во внутреннем представлении любого положительного числа равен 0, отрицательного числа равен 1. Поэтому этот разряд называется знаковым разрядом
Пример:
Получить внутреннее представление целого отрицательного числа - 1607.
Решение:
1. Внутреннее представление положительного числа: 000 0110 0100 0111;
|
|
2. Обратный код: 1111 1001 1011 1000;
3. Дополнительный код: 1111 1001 1011 1001 - внутреннее двоичное представление числа.
16-ричная форма: F9B9.
Представление вещественных чисел
Вещественные числа представляются в ПК в форме с плавающей точкой.
Этот формат использует представление вещественного числа R в виде произведения мантиссы m на основание системы счисления p в некоторой целой степени n которую называют порядком:
R=m*pn
Представление числа в форме с плавающей точкой неоднозначно.
Например: 25.324=25324*101=0.0025324*104=2532.4*10-2
В ЭВМ используют нормализованное представление числа в форме с плавающей точкой. Мантисса в нормализованном представлении должна удовлетворять условию: 0.1p m<1p
Иначе говоря, мантисса меньше 1 и первая значащая цифра - не 0.
В памяти компьютера мантисса представляется как целое число, содержащее только значащие цифры (0 целых и запятая не хранится). Следовательно, внутреннее представление вещественного числа сводиться к представлению пары целых чисел: мантиссы и порядка.
Например: 4-x байтовая ячейка памяти. В ячейке должна содержаться следующая информация о числе:
- знак числа;
- порядок;
- значащие цифры мантиссы.
МАН | ТИ | ССА | |
1-й байт | 2-й байт | 3-й байт | 4-й байт |
В старшем бите 1-го байта хранятся знак числа: 0 обозначает плюс, 1 - минус.
|
|
Оставшиеся 7 бит 1-го байта содержат машинный порядок. В следующих трех байтах хранятся значащие цифры мантиссы (24 разряда).
В семи двоичных разрядах помещаются двоичные числа в диапазоне от 0000000 до 1111111. Значит, машинный порядок изменяется в диапазоне от 0 до 127 (в десятичной системе счисления). Всего 128 значений. Порядок, очевидно, может быть, как положительным, так и отрицательным. Разумно эти 128 значений разделить поровну между положительным и отрицательным значениями порядка: от -64 до 63.
Машинный порядок смещен относительно математического и имеет только положительные значения. Смещение выбирается так, чтобы минимальному математическому значению порядка соответствовал нуль.
Связь между машинным порядком (Мр) и математическим (р) в рассматриваемом случае выражается формулой:
Мр = р + 64
Полученная формула записана в десятичной системе. В двоичной системе формула имеет вид: Mp2=p2+10000002
Для записи внутреннего представления вещественного числа необходимо:
1) перевести модуль данного числа в двоичную систему счисления с 24 значащими цифрами;
2) нормализовать двоичное число;
|
|
3) найти машинный порядок в двоичной системе счисления;
4) учитывая знак числа, выписать его представление в 4-х байтовом машинном слове.
Пример
Записать внутреннее представление числа 250,1875 в форме с плавающей точкой.
Решение:
1) Приведем его в двоичную систему счисления с 24 значащими цифрами: 250.187510=11111010, 0011000000000000002.
2) Запишем в форме нормализованного двоичного числа с плавающей точкой: 0,111110100011000000000000*1021000. Здесь мантисса, основание системы счисления (210=102) и порядок (810=10002) записаны в двоичной системе.
3) Вычислим машинный порядок в двоичной системе счисления: Mp2= 1000 + 100 0000 =100 1000.
4) Запишем представление числа в 4-х байтовой ячейке памяти с учетом знака числа:
0 | 1001000 | 11111010 | 00110000 | 00000000 | ||
31 | 24 | 23 | 0 | |||
Шестнадцатеричная форма: 48FA3000.
Пример.
По шестнадцатеричной форме внутреннего представления числа в форме с плавающей точкой C9811000 восстановить само число.
Решение: 1) Перейдем к двоичному представлению числа в 4-х байтовой ячейке, заменив каждую шестнадцатеричную цифру 4-мя двоичными цифрами:
1100 1001 1000 0001 0001 0000 0000 0000
1 | 1001001 | 10000001 | 00010000 | 00000000 | ||
31 | 23 | 0 | ||||
2) Заметим, что получен код отрицательного числа, поскольку в старшем разряде с номером 31 записана 1. Получим порядок числа: р=10010012 -10000002=10012=910.
3) Запишем в форме нормализованного двоичного числа с плавающей точкой с учетом знака числа:
-0,100000010001000000000000 *21001
4) Число в двоичной системе счисления имеет вид: -100000010.0012.
5) Переведем число в десятичную систему счисления:
-100000010.0012= -(1*28+1*21+1*2-3)= -258.12510
Задание для решений №1
1) Получить двоичную форму внутреннего представления целого числа в 2-х байтовой ячейке.
2) Получить шестнадцатеричную форму внутреннего представления целого числа 2-х байтовой ячейке.
3) По шестнадцатеричной форме внутреннего представления целого числа в 2-х байтовой ячейке восстановить само число.
Номера заданий | |||
№ Варианта | 1 | 2 | 3 |
1 | 1450 | -1450 | F67D |
2 | 1341 | -1341 | F7AA |
3 | 1983 | -1983 | F6D7 |
4 | 1305 | -1305 | F700 |
5 | 1984 | -1984 | F7CB |
6 | 1453 | -1453 | F967 |
7 | 1833 | -1833 | F83F |
8 | 2331 | -2331 | F6E5 |
9 | 1985 | -1985 | F8D7 |
10 | 1689 | -1689 | FA53 |
11 | 2101 | -2101 | F840 |
12 | 2304 | -2304 | FAE7 |
13 | 2345 | -2345 | F841 |
14 | 2134 | -2134 | FAC3 |
15 | 2435 | -2435 | FA56 |
Задание для решений №2
1) Получить шестнадцатеричную форму внутреннего представления числа в формате с плавающей точкой в 4-х байтовой ячейке.
2) По шестнадцатеричной форме внутреннего представления вещественного числа в 4-х байтовой ячейке восстановить само число.
Номера заданий | ||
№ Варианта | 1 | 2 |
1 | 26.28125 | C5DB0000 |
2 | -29.625 | 45D14000 |
3 | 91.8125 | C5ED0000 |
4 | -27.375 | 47B7A000 |
5 | 139.375 | C5D14000 |
6 | -26.28125 | 488B6000 |
7 | 27.375 | C7B7A000 |
8 | -33.75 | 45DB0000 |
9 | 29.265 | C88B6000 |
10 | -139.375 | 45ED0000 |
11 | 333.75 | C6870000 |
12 | -333.75 | 46870000 |
13 | 224.25 | C9A6E000 |
14 | -91.8125 | 49A6E000 |
15 | 33.75 | 48E04000 |
Практическая работа №12
Тема: Представление логических выражений.
Цель работы: научиться выполнять и записывать логические операции, представлять логические выражения в виде логических схем, решать логические задачи.
Теоретический материал:
Математическая логика изучает вопросы применения математических методов для решения логических задач и построения логических схем, которые лежат в основе работы любого компьютера. Суждения в математической логике называют высказываниями или логическими выражениями. Подобно тому, как для описания действий над переменными был разработан раздел математики алгебра, так и для обработки логических выражений в математической логике была создана алгебра высказываний, или алгебра логики.
Алгебра высказываний была разработана для того, чтобы можно было определять истинность или ложность составного высказывания, не вникая в их содержание.
В алгебре высказываний высказывания обозначаются именами логических переменных, которые могут принимать лишь два значения: “истина” (1) и “ложь” (0).
Логическое выражение - это символическая запись, состоящая из логических величин (констант или переменных), объединенных логическими операциями (связками).
В булевой алгебре простым высказываниям ставятся в соответствие логические переменные, значение которых равно 1, если высказывание истинно, и 0, если высказывание ложно. Обозначаются логические переменные буквами латинского алфавита. Это основные логические операции, при помощи которых можно записать любое логическое выражение:
1) Логическое отрицание (инверсия).
Таблица истинности:
2) Логическое умножение (конъюнкция)
Таблица истинности:
3) Логическое сложение (дизъюнкция)
Таблица истинности:
А | B | |
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 1 |
4) Логическое следование (импликация)
Таблица истинности:
5) Логическое тождество (эквиваленция).
Таблица истинности:
Для операций конъюнкции, дизъюнкции и инверсии определены законы булевой алгебры, позволяющие производить тождественные (равносильные) преобразования логических выражений.
Закон | Для ИЛИ | Для И |
Переместительный | ||
Сочетательный | ||
Распределительный | ||
Правила де Моргана | ||
Идемпотенции | ||
Поглощения | ||
Склеивания | ||
Операция переменной с ее инверсией | ||
Операция с константами | ||
Двойного отрицания |
Ход работы :
1. Формализуйте логические выражения:
а). Тимур летом побывает и на море, и в горах;
б). 10 делится на 2 и 5 не больше 3;
в). Если данный четырёхугольник квадрат, то около него можно описать окружность;
г). Если президент США — демократ, то в Африке водятся жирафы;
д). Если арбуз — ягода, то в бензоколонке есть бензин;
е). 23 делится на 6 тогда и только тогда, когда 23 делится на 3;
ж). Если Игорь знает английский или японский язык, то он получит место переводчика.
з). Впервые человек полетел в космос в 1957 г., или в 1959 г., или в 1961 г. Однако, известно, что впервые человек полетел в космос не в 1957 г. и не в 1959 г. Следовательно, впервые человек полетел в космос в 1961 г.
2. Запишите вид выражения А Ù (В Ú С) после его преобразования в соответствии с распределительным законом алгебры логики
3. Запишите вид выражения А Ú (В Ù С) после его преобразования в соответствии с распределительным законом алгебры логики
4. Упростите логические формулы и укажите, какие законы алгебры логики применили:
а).
б).
в).
г).
5. Запишите логическое выражение, равносильное выражению А Ù (В Ú С)
Составьте логическую схему для формулы при
A=0, B=0, C=1. Определите значение на выходе.
Составьте логическую схему для формулы при A=0, B=0, C=1.
Определите значение на выходе.
6. Запишите логическую формулу в соответствии со схемой:
7. Минимизировать функцию:
Дата добавления: 2019-03-09; просмотров: 1446; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!