Частина 17 - ADDS

Для повного змісту всіх уроків натисніть нижче, оскільки це надасть вам короткий зміст кожного уроку, а також теми, які будуть розглянуті.

ADDS є тим же, що і ADD, за винятком того, що воно встановлює прапори відповідно в CPSR.

Давайте розглянемо приклад, щоб проілюструвати:

Ми додаємо 100 у десятичній системі числення в r1, 4,294,967,295 у десятичній системі числення в r2. Потім ми додаємо r1 і r2 і розміщуємо в r0.

Ми бачимо adds , яке встановлює прапори в CPSR. Нам потрібно пам'ятати, коли ми відлагоджуватимемо в GDB, значення CPSR вказується в шістнадцятковій системі числення. Для того, щоб побачити, які прапори встановлені, нам потрібно перетворити шістнадцяткове на бінарне. Це зробить сенс, коли ми почнемо відлагоджувати і змінювати цей приклад у майбутніх лекціях.

Ви можете скомпільувати вище за допомогою:

Нам потрібно пам'ятати, що біти 31, 20, 29 і 28 в CPSR вказують наступне:

Біт 31 - N = Прапор Негативу

Біт 30 - Z = Прапор Нуля

Біт 29 - C = Прапор Переносу

Біт 28 - V = Прапор Перезапису

Отже, якщо значення в бінарній системі було 0110 бітів 31, 30, 29 і 28 (NZCV), це означало б:

Прапор Негативу не встановлений

Прапор Нуля встановлений

Прапор Переносу встановлений

Прапор Перезапису не встановлений

Важливо скомпільовувати, відлагоджувати і змінювати кожен приклад, щоб зрозуміти, що відбувається тут.

Наступна неділя ми вийдемо на тему Відлагодження ADDS.

results matching ""

    No results matching ""