Microsoft KB Archive/24965

From BetaArchive Wiki
Knowledge Base


Jump to Absolute Address

Article ID: 24965

Article Last Modified on 10/22/2003



APPLIES TO

  • Microsoft Macro Assembler 1.25
  • Microsoft Macro Assembler 1.27
  • Microsoft Macro Assembler 4.0
  • Microsoft Macro Assembler 4.0
  • Microsoft Macro Assembler 5.0
  • Microsoft Macro Assembler 5.1 Standard Edition
  • Microsoft Macro Assembler 5.1a
  • Microsoft Macro Assembler 6.0 Standard Edition
  • Microsoft Macro Assembler 6.0a
  • Microsoft Macro Assembler 6.0b



This article was previously published under Q24965

SUMMARY

There are two methods of coding a jump to an absolute address. These methods are as follows:

  1. Use AT to create a segment template beginning at an absolute address. Then, using ORG, a label can be assigned at a specific offset. -or-


  1. Initialize a double word variable to the specific address.


MORE INFORMATION

The following code demonstrates both methods:

; Assembly options needed: none

ASEG SEGMENT BYTE AT 0000H

           ORG 100
far_label  LABEL FAR

ASEG       ENDS


DATA   SEGMENT WORD 'DATA'

FAR_VAR DW   100,0

DATA         ENDS



CODE   SEGMENT BYTE 'CODE'
       ASSUME CS:CODE, DS:DATA

start: mov ax, data
       mov ds, ax

       JMP far_label          ;This is the first type of jump.

       JMP DWORD PTR far_var  ;This is the second type of jump.
CODE   ENDS

END start
                


Additional query words: 1.25 1.27 3.0x 4.00 5.00 5.10 5.10a 6.00 6.00a 6.00b

Keywords: KB24965