Загадка про ARM
2023-09-17 23:54В системе команд ARM есть инструкция, позволяющая напрямую получить значение регистра счётчика команд, называемого PC. Вот таким образом:
UPDATE: правильный ответ 104. Подробности смотрите в следующем посте: vak.dreamwidth.org/1091392.html
В регистр R1 будет занесено значение PC в момент выполнения. Для определённости пусть данная команда MOV находится по адресу 100. Вопрос: какое число окажется в R1? Варианты:mov r1, pc
- 100
- 101
- 102
- 104
- 108
- другое
UPDATE: правильный ответ 104. Подробности смотрите в следующем посте: vak.dreamwidth.org/1091392.html

no subject
Date: 2023-09-18 07:14 (UTC)no subject
Date: 2023-09-18 07:31 (UTC)no subject
Date: 2023-09-18 22:52 (UTC)no subject
Date: 2023-09-18 07:41 (UTC)no subject
Date: 2023-09-18 22:54 (UTC)no subject
Date: 2023-09-18 22:51 (UTC)no subject
Date: 2023-09-18 07:27 (UTC)А вот прочитать $PC на армах64 не так-то просто :)
no subject
Date: 2023-09-18 22:54 (UTC)no subject
Date: 2023-09-22 13:00 (UTC)На префетчер когда был старый фиксированный пайплайн.
Теперь уже префетчер не архитектурная, а фича имплементации - может спекулятивно фигачить из нескольких мест сразу...
Но в целом логически если - mov reg, PC - имхо и должно указывать "на после" (aka начало следующей) выполненной инструкции т.к. она же уже выполнилась раз всё заретайрилось и записалось в архитектурный регистр.
no subject
Date: 2023-09-18 07:34 (UTC)Я б предположил 104.
no subject
Date: 2023-09-18 22:57 (UTC)no subject
Date: 2023-09-18 07:37 (UTC)no subject
Date: 2023-09-18 22:58 (UTC)https://reverseengineering.stackexchange.com/questions/2828/what-do-the-following-arm-instructions-mean
no subject
Date: 2023-09-18 07:38 (UTC)https://www.meetup.com/cpp-bay-area/events/294318702/
no subject
Date: 2023-09-18 22:59 (UTC)no subject
Date: 2023-09-18 07:39 (UTC)no subject
Date: 2023-09-18 23:00 (UTC)no subject
Date: 2023-09-18 09:11 (UTC)Кстати, вот вам на поржать - моя файловая система FoolFS (foolish filesystem).
http://proolepedia.kharkov.org/index.php/FoolFS
no subject
Date: 2023-09-18 10:39 (UTC)