x86 инструкции, определить значение - PullRequest
0 голосов
/ 21 октября 2019

Я хочу знать, как я могу решить эту задачу в сборке, я знаю, что это базовый вопрос, но я ничего не знаю о сборке и не могу начать учиться, просто для понимания этой задачи проблема в том, что я не знаюкакую часть я должен начать читать и так далеепоэтому не могли бы вы, пожалуйста, дайте мне знать, шаг за шагом к решению? Я знаю ответ: 400но способ ответа важен для менявопрос:Следующие инструкции x86 написаны на ассемблере. Определите значение регистра eax:1: xor eax, eax2: xor ebx, ebx3: XOR EDX, EDX4: mov eax, 64h5: mov ebx, 28h6: div ebx7: mov eax, edx8: mul edxОтвет должен быть написан в десятичной записи. Заранее спасибо

1 Ответ

1 голос
/ 21 октября 2019
1: xor eax, eax 
eax = 0
2: xor ebx, ebx 
ebx = 0
3: xor edx, edx 
edx = 0
4: mov eax, 64h 
eax = 100
5: mov ebx, 28h 
ebx = 40
6: div ebx 
eax = (100 / 40) = 2
edx = (100 % 40) = 20
7: mov eax, edx 
eax = edx
8: mul edx 
edx:eax = (edx * eax) = (20 * 20) = 400
auto n = (100 % 40)
return (n * n)

div
mul

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...