Compiler Error C2432

illegal reference to 16-bit data in 'identifier'

A 16-bit register was used as an index or base register.

The 32-bit targeted compiler does not support referencing 16-bit data, which is supported by the chip using the address size prefix. This means that 16-bit registers cannot be used as index or base registers if you are compiling for 32-bit code.

The following is an example of this error:

_asm mov eax, DWORD PTR [bx]