Что делает следующая инструкция по сборке: addd -8(%rbp), %xmm0?

Я пытаюсь выяснить, что на самом деле делает инструкция по ассемблеру

addsd   -8(%rbp), %xmm0

Я знаю, что это дополнение с плавающей запятой на машине x86-64 с SSE2. Кроме того, я знаю, что %xmm0 — это регистр. Однако в чем я не уверен, так это в том, что означает -8 (% rbp). Инструкции немного путают по этому поводу.

По сути, вопрос в том, означает ли -8(%rbp), что он берет значение из регистра (возможно, последние 8 байтов rbp) или берет значение из памяти (значение с плавающей запятой со смещением -8 от адреса, содержащегося в rbp).

8
задан Mysticial 1 May 2012 в 15:40
поделиться