Как да направя байт изравняване?

D

davyzhu

Guest
Здравейте всички,

Какво може да доведе до неправилно байт изравняване?И как да направя байт изравняване цяло?
Благодарности!

Дейви

 
Последния път, мой приятел съобщи за проблем с четенето на данни чрез указател от паметта.Той е получил MSB бита, вместо на пълен номер.Проблемът е само, свързани с плаваща типове, ако аз не съм прав.Други видове се четат ОК. Платформата е ARM.
Доколкото знам не е aligment не са посочени в стандарт С по този начин прилагането на конкретни ключови думи могат да бъдат използвани за приготвянето му.Най-малко каза е вярно за монтажници.
Проверете Pragma атрибути за конкретни съставител, ако то е изпълнено със стандартни В, където изпълнение на специфичните Addons да бъдат определени чрез # ргадта.

 
наистина зависи от микроконтролера / процесор.

някои микроконтролера предпочита да съхранява данни, в още по адреси, например за

Трябва да проверите чрез документацията на вашия микроконтролера ..

 
През май преработватели 4 байт трябва да започне най-адрес, който е кратно на 4 (завършва с двоичен 00), 2 байт кратно на 2 и байт навсякъде.Въпреки това е възможно да се зареди на данни, различни мъдри.Това може да се onereason.
Другите може да се дължи на формата на съхранение на данни, много процесори магазина с нискокачествена LSByte на по-висока адрес и MSByte на по-ниска адрес.(Байт адресируеми ..)
За да се избегнат проблеми проверка на формат за съхранение на данни, преди програмиране.

Надявам се това да помогне.
brmadhukar

 
davyzhu написа:И как да направя байт изравняване цяло?

 

Welcome to EDABoard.com

Sponsor

Back
Top