Подтвердить что ты не робот

Почему регистры x86 называются так, как они?

Например, накопитель имеет имя EAX, а указатель инструкции называется IP. Я также знаю, что есть байты, называемые CL и DH. Я знаю, что для всех имен должно быть соглашение, но что это такое?

4b9b3361

Ответ 1

C и D - числа/типы и H для высоких и L для низких частей более высокого регистра. http://en.wikipedia.org/wiki/X86

Википедия очень хорошо объясняет это.

Больше из Википедии:

  • AX/EAX/RAX: аккумулятор
  • BX/EBX/RBX: базовый
  • CX/ECX/RCX: счетчик
  • DX/EDX/RDX: данные/общая

Ответ 2

Что-то, что я нашел

* EAX - Accumulator Register
* EBX - Base Register
* ECX - Counter Register
* EDX - Data Register
* ESI - Source Index
* EDI - Destination Index
* EBP - Base Pointer
* ESP - Stack Pointer

Ответ 3

Это история. X86 пришел из 8086, который пришел из 8080, который пришел из 8008, который пришел из 4004. Были 16-разрядные регистры AX, BX и т.д., А для 80386 они получили "расширенный" до 32 бит.

Добавлено: BTW у Motorola 68K были 32-битные регистры с самого начала, поэтому было намного проще программировать в течение первых двух десятилетий. Я работал над проектами, в которых Intel была выбрана по причинам бизнеса, а не по техническим причинам.

Ответ 5

У более старых процессоров есть аккумуляторы с именем A, B и т.д. (в алфавитном порядке orderd). Когда были разработаны аккумуляторы 16 и 32 бит, инженеры добавили X (расширенный). Итак, все об истории, так как язык C называется так, потому что он был разработан с языка B (лаборатории Белла).

Соглашение является только внутренним, чтобы не отставать от имен, с которыми они знакомы.