по картинке следует то что под словом адрес в руководстве на контроллер, нужно понимать адрес байта, что ж, хорошо, спасибо.
по картинке следует то что под словом адрес в руководстве на контроллер, нужно понимать адрес байта, что ж, хорошо, спасибо.
Чтобы было понятнее представьте себе, что адресное пространство состоит из ячеек размером по 4 байта. В одну ячейку можно положить 2 регистра или одну 4-х байтную переменную. Таким образом адрес ячейки для 4-х байтной переменной должен быть кратен 4 байтам. Иначе она будет размещена в двух разных ячейках.
Надо просто следить за адресацией так, чтобы нужная нам переменная целиком помещалась в одну ячейку.
Последний раз редактировалось amn; 27.10.2014 в 16:22.
Еще раз:
1 регистр -2 байта
2 регистра -4байта
Адрес должен быть для 4-х байтной переменной кратен 4-м(байтам)
Что не правильно написано?
Где сказано, что номер адреса кратный 4-м?
Все мы с Вами все хорошо, понимаем, просто немого криво составлена инструкция. Поэтому так часто и всплывает эта тема.
причем тут с нуля?
Если к примеру переменная 1=2 байтам,
а 2 и 3 4-м байтам,
то адреса будут
0х00
0х01
0х03
И это будет правильно, не смотря на то, что ни1 ни 3 на 4 не делятся!!
Это просто кошмар..
не понял, ка это "Снаружи"-ручками, с выравниванием.
Есть великолепная картинка, если по ней не ясно, то "медицина тут бессильна".
Биты.jpg