![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| out51d3r |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 57 Регистрация: 19.8.2006 Репутация: 1 Всего: 2 |
То, что у памяти нумерация ячеек начинается с нуля, я уже понял... Но никак не пойму, кто (или что) такие старшие/младшие байты?
В одном из журналов "Радио" было описано распределение видео-памяти на ПК 86РК (наш советский)))). Так вот, там написано, что в слове (это, как я понял 2 байта) младший байт, это тот, у которого адрес меньше. В другой книге, совсем наоборот. Подскажите пожалуйста, как хранится память вообще? Что такое разряд числа и откуда он начинается, слева или справа? И все таки, что подразумевают под старшим байтом, а что под младшим? Помогите пожалуйста разобраться... Кстати, знаю более-менее язык Си++.
Вообще, фиг знает какое чило получается... А если a.bit7=1 То получается чило один. То есть - противоречие тому, что биты нумеруются с лева... Что-то я совсем запутался с этой памятью... Помогите пожалуйста разобраться. Это сообщение отредактировал(а) out51d3r - 16.11.2006, 15:41 |
|||
|
||||
| JackYF |
|
||||
![]() полуавантюрист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 18 Всего: 162 |
Что-то я, видать, в этой жизни пропустил... Что (вкратце) означают эти ":"? Количество байт под переменную? или бит? или еще чего... Насчет разрядов... Начинаются с младшего. Разряд - в 2-ой системе - то же, что и бит. В слове младший байт располагается по младшему адресу, старший - по старшему. Допустим:
Так вот, старший байт - AB, младший байт - F0... |
||||
|
|||||
| out51d3r |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 57 Регистрация: 19.8.2006 Репутация: 1 Всего: 2 |
Большое спасибо!
А на счет ":" - это поля. То есть сколько бит надо выделить для переменной... Хотя тип переменной unsigned char (диапозон чисел составляет от 0-555), но только можно присвоить числа 1 и 0. |
|||
|
||||
| Damarus |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Awaiting Authorisation Сообщений: 671 Регистрация: 6.5.2006 Репутация: 6 Всего: 29 |
||||
|
||||
| out51d3r |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 57 Регистрация: 19.8.2006 Репутация: 1 Всего: 2 |
Ребята, а вы бы не могли как-то более по "русски" объяснить, что да как? Желательно графически... Что-то никак не могу въехать... Пожалуйста!
|
|||
|
||||
| MAKCim |
|
|||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 52 Всего: 207 |
out51d3r,
В различных архитектурах порядок байт в слове (двойном слове, учетверенном, ...) может быть различным Различают big-endian и little-endian byte order little-endian: младший байт находится по младшему адресу пусть есть двоичное число 10000110 01111000, 10000110 - старший байт, 01111000 - младший, в памяти это слово будет располагаться следующим образом: адрес i - 01111000, адрес i + 1 - 10000110 little-endian (прямой порядок) - применяется в x86 архитектуре Соответственно если имеем big-endian (обратный порядок), то по адресу i - 10000110, i + 1 - 01111000 -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
|||
|
||||
| JackYF |
|
|||
![]() полуавантюрист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 18 Всего: 162 |
Не знаю насчет графически, но...
Вот есть слово - 16 бит. Биты 0-7 занимает младший байт, биты 8-15 - старший. |
|||
|
||||
| out51d3r |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 57 Регистрация: 19.8.2006 Репутация: 1 Всего: 2 |
Вот байт: 11110000. Какой тут разряд нулевой? самый первый (слева), или самый последний?
т. е. как правльно? 1. Байт: 11110000 нумерация разрядов: 01234567 или 2. Байт: 11110000 нумерация разрядов: 76543210 |
|||
|
||||
| JackYF |
|
|||
![]() полуавантюрист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 18 Всего: 162 |
Вариант 2.
|
|||
|
||||
| out51d3r |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 57 Регистрация: 19.8.2006 Репутация: 1 Всего: 2 |
Так, уже стало что-то проявляться)))) JackYF, большое спасибо за терпение и помощь!
Теперь у нас слово (это получается два байта): 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 Правльно ли я пронумеровал разряды слова? И это, в пердыдущем моем вопросе, правильный оказался вариант 2. Кто там младший бит, 1 (7 разряд) или 0 (0-вой разряд)? |
|||
|
||||
| JackYF |
|
|||
![]() полуавантюрист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 18 Всего: 162 |
Разряды слова - да.
Насчет пред. вопроса - младший - 0. |
|||
|
||||
| out51d3r |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 57 Регистрация: 19.8.2006 Репутация: 1 Всего: 2 |
1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 а тут младшим байтом будет второй (00000000), так? |
|||
|
||||
| MAKCim |
|
|||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 52 Всего: 207 |
out51d3r,
да -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
|||
|
||||
| out51d3r |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 57 Регистрация: 19.8.2006 Репутация: 1 Всего: 2 |
Ясно...
Ребят, еще чуток осталось))) Вот память [] [] [] [] [] [] [] [] [] [] [] [] [] [] (Это ячейки). В этих ячейках биты хранятся или байты (как вообще принято считать)? |
|||
|
||||
| JackYF |
|
|||
![]() полуавантюрист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 18 Всего: 162 |
Хранятся байты. Доступ к битам - уже отдельный вопрос (для каждого байта).
Так устроена оперативка/ Это сообщение отредактировал(а) JackYF - 16.11.2006, 17:34 |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |