Re: AM186 instructions
From: flekso (taurus_at_email.hinet.hr)
Date: 04/29/04
- Previous message: Markus Humm: "Re: The Linear Address Space"
- In reply to: BONDOK: "AM186 instructions"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Date: Thu, 29 Apr 2004 21:09:37 +0000 (UTC)
"BONDOK" <osama.hussein@link.net> wrote in message
news:93058fe5078d01ccc64ee307e63db08a@localhost.talkaboutprogramming.com...
> I want to know the fifference between:
> 1) - MOV DS:Offset, 00
> - MOV Byte Ptr DS:Offset, 00
'Size' ptr keywords explicitly state the size of the destination operand,
which assembler can't extract from your 00 immediate operand (is it 00 word,
00 byte, 00 double word).
> 2) - Call Sub_routine
> - Call near ptr Sub_routine
If we talk about real mode, difference between 'near' and 'far' call is that
near takes a word operand that allows you to offset the IP by
+-32KB(intra-segment), while far takes two word operands thus allowing you
to offset both IP and CS registers effectively covering entire 8086 address
space (1MB). Near pushes only the IP register on the stack for the return
path, while far pushes both IP and CS registers required for return from a
different segment/anywhere in ram.
> 3) - Cmp Ax, 00
> - Cmp byte DS:Offset, 00
>
Read 1)
- Previous message: Markus Humm: "Re: The Linear Address Space"
- In reply to: BONDOK: "AM186 instructions"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Relevant Pages
|