Instrukcje trybu Thumb są 2 bajtami, a instrukcja trybu ARM ma 4 bajty. zrzut ekranu to dezasemblacja instrukcji trybu kciuka. dlaczego widzę 4-bajtowe instrukcje wymieszane z 2-bajtowymi instrukcjami? Czy ktoś może to wyjaśnić?tryb kciuka dłoni instrukcje 4-bajtowe
z góry dziękuję.
Ponieważ jest to ** thumb-2 **. –
Prawdziwe pytanie brzmi: dlaczego te dwie instrukcje mov są 4-bajtowe, kiedy można je zakodować jako instrukcje 2-bajtowe (thumb1). –
* thumb-1 * nie ma w ogóle 32-bitowych op-kodów. Tylko * thumb-2 * ma 'mov.w', itp. Procesor nie może przełączać trybów pomiędzy instrukcjami (aż do BLX, itp.), Więc ten kod musi być * thumb-2 *. Nawet 'bl' i' blx' są 16-bitowe w * kciuku-1 *. –