Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
200801_Lec_03_1.pdf
Скачиваний:
19
Добавлен:
16.03.2015
Размер:
421.2 Кб
Скачать

адресу. Следовательно, первым, наоборот, сохраняется байт с наименьшей значащей частью ("little-end", в исходном числе находится справа). Такой способ принято называть "littleendian" - по-русски говорят "обратное размещение байтов".

Из описанного выше следует, что различие состоит в том, "с какого конца" (end) необходимо начинать сохранять многобайтовое данное.

Распространенные у нас компьютеры с Intel-совместимыми процессорами используют архитектуру "little-endian".

Следует иметь ввиду, что существенным является не столько то, как компьютерная система хранит данные "внутри себя" (в конце концов это ее внутренне дело), а то, как она их сохраняет "снаружи" в файлах. Это с практической точки зрения гораздо важнее.

В качестве примера представим, что текст "UNIX" в качестве двух 2-байтовых слов сохранен "big-endian" системой. Тогда "little-endian" система расшифрует его как "NUXI", переставив буквы в каждом из машинных слов. Это "недоразумение", также связанное с обсуждаемым вопросом, иногда называют "проблемой NUXI". Аналогичные трудности могут возникать при сохранении графических изображений, поскольку цвета в современных компьютерах также кодируются многобайтовыми числами. Так, например, файлы программы Adobe Photoshop и широко распространенный "фотографический" формат JPEG используют схему "big-endian", а не менее распространенные файлы GIF и BMP - "little-endian").

В современном "внеплатформенном" (не предназначенном для какого-то конкретного компьютера) языке Java все данные также хранятся по способу "big-endian". А в языке ADA 95 программисту разрешается самому задавать режим хранения многобайтовых данных.

1.2 Системы счисления

Поскольку система записи чисел, используемая нами повседневно, основывается на степенях десяти, говорят, что число записано в системе счисления с основанием 10.

Система с основанием 2 является естественной для компьютера. В ней применяются степени числа 2 вместо степеней числа. Так, двоичное число типа 1011 представлено в следующем виде:

1 23 0 22 1 21 1 20 В десятичной системе счисления получим:

1 8 0 4 1 2 1 1

С помощью двоичной системы можно выразить любое число (если вы располагаете достаточным количеством битов) в виде комбинации 1 и 0. Эта система удобна для компьютеров, выражающих информацию с помощью состояний "вкл." или "откл.", которые могут быть интерпретированы как 1 и 0.

Соответствия между различными часто используемыми системами счисления представлены в таблице ниже.

Десятичная цифра

Шестнадцате­

Двоичный

Десятичная

Шестнадцатерич

Двоичный

 

ричная цифра

эквивалент

цифра

ная цифра

эквивалент

 

 

 

 

 

 

0

0

0000

8

8

1000

 

 

 

 

 

 

1

1

0001

9

9

1001

 

 

 

 

 

 

2

2

0010

10

А

1010

 

 

 

 

 

 

3

3

0011

11

В

1011

 

 

 

 

 

 

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]