Microsoft KB Archive/24965

From BetaArchive Wiki
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
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