Упорядочение байтов

 
 

Байты в слове могут нумероваться слева направо или справа налево. На что это влияет?

 
 

На рисунке а) изображена область 32-разрядной памяти, в которой байты пронумерованы слева направо. Компьютер, с такой памятью относится к категории компьютеров с прямым порядком следования байтов(big endian)

На рисунке, б) показана аналогичная область памяти 32-разрядного компьютера с нумерацией байтов справа налево (как у компьютеров Intel). Компьютер, с такой памятью относится к категории компьютеровс обратным порядком следования байтов(little endian)

Рисунок а). Адреса байт и полуслов в слове при прямом порядке (Little-endian).

Рисунок б). Адреса байт и полуслов в слове при обратном порядке (Big-endian).

Таким образом, в формате прямого порядка, байт с наименьшим адресом в слове рассматривается как младший значащий байт слова, а байт с наибольшим адресом - старший значащий байт.

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

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

Формат представления целого числа одинаков в обеих системах. При этом, 32-разрядное целое число (например, 6) представлено кодом 110 в трех крайних правых битах слова, а остальные 29 бит представлены нулями.

После пересылки целого числа (6) из компьютера с прямым порядком следования байт в компьютер с обратным порядком следования байт, младший байт передаваемого целого числа с кодом 110 окажется старшим байтом целого числа.

В результате такой пересылки значение целого числа искажается.

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

Это позволит компьюте­ру-получателю производить только необходимые преобразования. От­сутствие стандарта упорядочивания байтов является главным недостатком такого способа.








Дата добавления: 2015-07-24; просмотров: 1853;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.003 сек.