Вопрос:

Архитектура ЭВМ и микроконтроллеров. Какой шестнадцатеричный код содержится в регистре AL после выполнения фрагмента программы на языке АССЕМБЛЕРА при CF = 1? MOV CL, 3; MOV AL, 0FH; RCR AL, CL. Варианты: а) 87; б) 5C; в) 18; г) E1; д) F1.

Ответ:

В регистр AL сначала загружается значение \(0F_{16}\). Команда RCR AL, CL выполняет циклический сдвиг вправо через флаг переноса на 3 позиции. При начальном \(CF=1\):

\(00001111_2 \xrightarrow{RCR} 10000111_2 \xrightarrow{RCR} 11000011_2 \xrightarrow{RCR} 11100001_2\).

\(11100001_2 = E1_{16}\).

Ответ: E1 (вариант г).