Author Topic: ASM mnemonics and registers  (Read 272 times)

0 Members and 1 Guest are viewing this topic.

Brian Alvarez

  • Full Member
  • ***
  • Posts: 231
    • PluriBASIC
ASM mnemonics and registers
« on: December 26, 2018, 06:26:57 PM »

 Charles, do you by any chance have a list of supported mnemonics and registers for both 32bit and 64 bit compilations?

 I have currently implemented my list but i would like to make sure my list is correct. :)

Charles Pegge

  • Admin Support Member
  • *****
  • Posts: 3974
    • Oxygen Basic
Re: ASM mnemonics and registers
« Reply #1 on: December 26, 2018, 10:09:24 PM »
Hi Brian,

I don't have a coherent list, other than the codings embedded in assm.inc.

o2 currently supports extensions up to SSE4.2

A good reference:

https://en.wikipedia.org/wiki/X86_instruction_listings


A Listing of registers from lang.inc

Code: [Select]
string x86_registers="

' regsize regno regtype

al    10 101
cl    10 111
dl    10 121
bl    10 131
ah    10 141
ch    10 151
dh    10 161
bh    10 171
'---------------------------
ax    10 201
cx    10 211
dx    10 221
bx    10 231
sp    10 241
bp    10 251
si    10 261
di    10 271
'---------------------------
eax   10 401
ecx   10 411
edx   10 421
ebx   10 431
esp   10 441
ebp   10 451
esi   10 461
edi   10 471
'---------------------------
st0   10 A02
st1   10 A12
st2   10 A22
st3   10 A32
st4   10 A42
st5   10 A52
st6   10 A62
st7   10 A72
'---------------------------
mmx0  10 F03
mmx1  10 F13
mmx2  10 F23
mmx3  10 F33
mmx4  10 F43
mmx5  10 F53
mmx6  10 F63
mmx7  10 F73
'--------------------------- 
xmm0  10 F04
xmm1  10 F14
xmm2  10 F24
xmm3  10 F34
xmm4  10 F44
xmm5  10 F54
xmm6  10 F64
xmm7  10 F74
xmm8  10 F84
xmm9  10 F94
xmm10 10 FA4
xmm11 10 FB4
xmm12 10 FC4
xmm13 10 FD4
xmm14 10 FE4
xmm15 10 FF4
'---------------------------
cr0   10 405 '129 
cr2   10 415
cr3   10 425
cr4   10 435
'---------------------------
dr0   10 406 '130 
dr1   10 416
dr2   10 426
dr3   10 436
dr4   10 446
dr5   10 456
dr6   10 466
dr7   10 476
'---------------------------
es    10 407'131 
cs    10 417
ss    10 427
ds    10 437
fs    10 447
gs    10 457
'---------------------------
'64 bit mode registers
'---------------------------
rax   10 809
rcx   10 819
rdx   10 829
rbx   10 839
rsp   10 849
rbp   10 859
rsi   10 869
rdi   10 879
r8    10 889
r9    10 899
r10   10 8A9
r11   10 8B9
r12   10 8C9
r13   10 8D9
r14   10 8E9
r15   10 8F9
'---------------------------
r8l   10 489
r9l   10 499
r10l  10 4A9
r11l  10 4B9
r12l  10 4C9
r13l  10 4D9
r14l  10 4E9
r15l  10 4F9
'---------------------------
r8w   10 289
r9w   10 299
r10w  10 2A9
r11w  10 2B9
r12w  10 2C9
r13w  10 2D9
r14w  10 2E9
r15w  10 2F9
'---------------------------
r8d   10 489
r9d   10 499
r10d  10 4A9
r11d  10 4B9
r12d  10 4C9
r13d  10 4D9
r14d  10 4E9
r15d  10 4F9
"

'end of data x86 registers


Brian Alvarez

  • Full Member
  • ***
  • Posts: 231
    • PluriBASIC
Re: ASM mnemonics and registers
« Reply #2 on: December 26, 2018, 11:15:48 PM »
That pretty much looks like my list as well. Most likely my list is correct. I will verify everything tomorrow, as in my tests assembly works fine. :)

Thanks Charles.