(C5) LDS opcode
Posted: Mon Aug 27, 2012 6:43 am
Hi guys
I'm busy reading through some assembly code and trying to understand what the opcodes are doing. I ran into opcode C5 with no prefixes which is LDS /r.
The modr/m byte is &H10 (00-010-000), which gives me DX from the reg field (010) and [BX+SI] from the mod (00) and r/m (000) fields.
The intel manual says that the default segment register is SS for effective addresses containing a BP index, and DS for other effective addresses.
I'm having trouble firguring out what the address pointer is supposed to be. Is it DS:[BX+SI]? Cos then that would mean that DS stays the same (or is loaded with the same value again) and DX is loaded with [BX+SI], wouldn't it?
Please help me understand this...
I'm busy reading through some assembly code and trying to understand what the opcodes are doing. I ran into opcode C5 with no prefixes which is LDS /r.
The modr/m byte is &H10 (00-010-000), which gives me DX from the reg field (010) and [BX+SI] from the mod (00) and r/m (000) fields.
The intel manual says that the default segment register is SS for effective addresses containing a BP index, and DS for other effective addresses.
I'm having trouble firguring out what the address pointer is supposed to be. Is it DS:[BX+SI]? Cos then that would mean that DS stays the same (or is loaded with the same value again) and DX is loaded with [BX+SI], wouldn't it?
Please help me understand this...