В архитектуре x86-64 существуют следующие регистры общего назначения:

  • RAX - аккумулятор, потому что в него часть инструкций складывает результат выполнения
  • RBX - инструкции используют как адрес начала данных
  • RCX - используется в качестве счетчика цикла и автоматически уменьшается рядом команд
  • RDX - регистр данных, по-видимому можно использовать для чего угодно и специального назначения не имеет
  • RSI - источник, адрес в памяти для получения данных
  • RDI - получатель, адрес в памяти куда записываются данные
  • RBP - регистр базы кадра стека для организации вызова функций
  • RSP - регистр указателя стека для определения места в памяти где начинается стек
  • R8-R15 - неименованные и могут использоваться для различных операций
  • RFLAGS - регистр флагов с разными полезными битами
  • RIP - содержит адрес текущий выполняемой команды, и данные сюда заносить не надо, это делает сам процессор при выполнении операций перехода