Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Представление данных и команд в памяти.doc
Скачиваний:
25
Добавлен:
02.11.2018
Размер:
188.93 Кб
Скачать

Запись чисел с фиксированной точкой.

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

Обычно целые числа занимают в памяти компьютеров один, два, четыре байта или восемь байт. Один, как правило, старший бит отводится под знак числа. Знак положительного числа "+" кодируется нулем, а знак отрицательного числа "-" - единицей.

Целые положительные числа представляются в так называемом двоичном прямом коде.

Целые отрицательные числа представляются в так называемом двоичном дополнительном коде.

Запись положительных чисел с фиксированной точкой.

В каждом бите при представлении данных можно записать 0 или 1 .

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

При этом минимально возможное число, которое можно записать таким двоичным кодом, равно 0. Максимально возможное число, которое можно записать таким двоичным кодом, можно определить как: М= 2n -1

Этими двумя числами полностью можно определить диапазон, чисел которые можно представить таким двоичным кодом.

1 байт

0..255

2 байт

0..65535

4 байт

0..4294967295

8 байт

0..263

Для представления целого положительного числа нужно перевести число в 2 с/с и записать его по разрядам. Например, число 37, в одном байте памяти может быть представлено так

3710= 2516= 0010 01012

0

0

1

0

0

1

0

1

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

Берется СЛОВО или ДВА байта ( 16 битов ) и рассматривается как единое целое.

Реально в Оперативной Памяти СТАРШИЙ байт МЕНЯЕТСЯ местами с МЛАДШИМ внутри этого СЛОВА.

Например, внутреннее представление числа 195 в ОП в виде числа с фиксированной точкой длиной в СЛОВО необходимо проделать следующие преобразования :

19510 == С316 == 00 С316==

0000 0000 1100 0011

В Оперативной памяти будем иметь картинку

1100 0011 0000 0000

или в шестнадцатеричном виде

С 3 0 0

Четырехбайтовое число с фиксированной точкой характеризуется тем, что наряду с тем, что в каждом слове перевернуты байты, сами слова внутри этого двойного слова перевернуты!!!

Например, в четырех байтах ОП число 195 представляется так:

19510 == С316 == 00 00 00 С316==

0000 0000 0000 0000 0000 0000 1100 0011

В Оперативной памяти

1100 0011 0000 0000 0000 0000 0000 0000

или в шестнадцатеричном виде

С3 00 00 00 00

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

Например, в четырех байтах ОП число 195 представляется так:

19510 == С316 == 00 00 00 00 00 00 00 С316==

0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 1100 0011

В Оперативной памяти

1100 0011 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000

или в шестнадцатеричном виде

С3 00 00 00 00 00 00 00 00 00