Re: To RISC or not to RISC



Herbert Kleebauer wrote:

I would call AL,AH,AX,EAX,BL,... funny (or better idiotic) names.
The only logical names for registers are r0,r1,r2,...
You really should thank AMD, that at least the new registers
in the x64 architecture got proper names.



Hi Herbert,

Sorry to state the obvious and something that you likely already know but this is just another example of legacy in the x86. Accumulator High/Low (AH/AL), Base High/Low (BH/BL), Counter High/Low (CH/CL) and Data High/Low (DH/DL) Destination Index (DI), Source Index (SI), Stack Pointer (SP) and Base Pointer (BP), prefix an E for 32 bit Extended. They are not a random naming convention and at the time they were chosen it made perfect sense and was quite a good choice (and quite a logical one too). However now they are all essentially general purpose with a only few legacy opcodes (scasb jecxz etc..) to remind us of their original intent. But that said I agree, R0...R16 is the way to go when they are just general purpose registers.

Donkey
.



Relevant Pages

  • Re: Obligatory Dell vs Mac Pro Prices
    ... the 32-bit ones don't have any general purpose registers whilst the 64-bit versions do. ... And the only way those register offer more speed is if you exceed the number available in IA-32. ... "The eight 32-bit general-purpose data registers are used to hold operands for logical and arithmetic operations, operands for address calculations and memory pointers. ...
    (comp.sys.mac.advocacy)
  • Re: Microsoft throws in the towel on Vista
    ... The new ones are general purpose. ... [snip - 64 bit performance increase] ... Games are one of the categories of apps that really do use huge amounts of memory, and stand to benefit form 64-bit support. ... You can't use the ES, SP, DS registers to hold a temp value. ...
    (comp.sys.mac.advocacy)
  • Re: fast arm9 cipher?
    ... Salsa20/20 needs 10.08 cycles/byte on Athlon, using general purpose ... The ARM has 15 general purpose registers, ...
    (sci.crypt)
  • Re: Network stack cloning / virtualization patches
    ... A third issue on the x86 is a lack of registers: ... "general purpose" registers (and each of them actually has a specific ... a struct vimage will be a noticable performance hit. ... can be safely merged into the main CVS tree. ...
    (freebsd-hackers)
  • Re: x86 addressing
    ... > does anyone know of a good tut dealing with addressing in assembly? ... For the 'general purpose' registers some operations ... consult the processor manuals (or google for HelpPC which contains ...
    (alt.lang.asm)