Я недавно начал изучать ассемблер.Я искал фрагмент кода, который я не совсем уверен, что он делает.
LDR r0, =str
MOV r1, #0
loop
LDRB r2, [r0], #1
ADD r1, r1, #1
CMP r2, #0
BNE loop
SUB r1, r1, #1
Data Segment Little Endian Format
str DCB "mCQ5Gtq",0
Насколько я понимаю, DCB загружает строку в слово из 32 бит, и каждый символ имеет свойсобственный байт.Little Endian Format означает, что младший байт хранится в младшем адресе памяти.LDR делает r0 = строку.LDRB загружает младший значащий байт, содержащийся в r0, в смещение r2 на 1 бит.
1) Начинается ли младший значащий байт с m или q?то есть это будет
<- 0000 0017 (ascii для q) или <- 0000 006D (ascii для m). </p>
2) Загружает ли оператор LDRB младший значащий байт из смещения r0 на 1 битв г2.Если так, то каким будет r2 (только первый цикл).
Большое спасибо