Частина 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.