Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

ASM Instruction jmpi

1,047 views
Skip to first unread message

Vaqar Ahmed

unread,
Apr 30, 1996, 3:00:00 AM4/30/96
to

I have a experience with ASM IBM 370. Now I am exploring ASM 80X86 language.
I saw a instruction jmpi. It looks me kind of indirect jump, but
I could not find any thing about it in any manual. The following is
the segment for instruction:

INITSEG = 0x9000
jmpi go, INITSEG
go: mov di,#0x4000-12

If some one knows about it please let me know.

Thanks

Vaqar Ahmed

Joel Rubin

unread,
Apr 30, 1996, 3:00:00 AM4/30/96
to

In article <4m5du6$5...@vixen.cso.uiuc.edu>, va...@prairienet.org says...

Which assembler are you using? This doesn't look like the standard
Intel/Microsoft format. For example, you're using 0x for hex, which is used in
the "C" language, whereas MASM and MASM-like assemblers use "h" on the end.
("int 21h")

Also, standard Intel-Microsoft Assembly language wouldn't use # in front of an
immediate number. I think Motorola-type assembly languages do, and I know 6502
assembly language does.

Could this be just an absolute jmp? It looks like it is jumping only to the
next instruction but using a far jump--maybe it's a delay instruction?

What object code is generated? If it's just an absolute far jmp, then it should
be generating ea 00 90 and then the offset of go within the segment.

--
*******
WARNING
*******
The following lines violate the indecency provisions of the U.S.
Telecommunications Act of 1996:
Henry Hyde
James Exon
Slade Gorton.
William Clinton


Kurt Friis Hansen

unread,
May 1, 1996, 3:00:00 AM5/1/96
to

va...@prairienet.org (Vaqar Ahmed) wrote:

| I have a experience with ASM IBM 370. Now I am exploring ASM 80X86 language.
| I saw a instruction jmpi. It looks me kind of indirect jump, but
| I could not find any thing about it in any manual. The following is
| the segment for instruction:
|
| INITSEG = 0x9000
| jmpi go, INITSEG
| go: mov di,#0x4000-12

| If some one knows about it please let me know.

Look for a macro with the name "jmpi" somewhere in your include files.

Best regards

Kurt Friis Hansen - kfr...@aix1.danadata.dk

Europe 1996: A bribe a day keeps the taxman away...

Francois-Rene Rideau

unread,
May 3, 1996, 3:00:00 AM5/3/96
to

| I have a experience with ASM IBM 370. Now I am exploring ASM 80X86 language.
| I saw a instruction jmpi. It looks me kind of indirect jump, but
| I could not find any thing about it in any manual. The following is
| the segment for instruction:
|
| INITSEG = 0x9000
| jmpi go, INITSEG
| go: mov di,#0x4000-12

| If some one knows about it please let me know.

Look for a macro with the name "jmpi" somewhere in your include files.

Nope. jmpi or jmpf is the name that as86 gives to far jumps,
so it is distinguished from jmp (short jump), and br (near branch).
Hence your instruction, taken from the Linux boot sector,
consists in jumping to the initialization code,
as downloaded to (real-mode) segment INITSEG.
Similarly, ret is always near (as86 is designed primarily
for small/flat memory model, which is good), and retf/reti is the far ret,
callf/calli the far call.

If you want info about as86,
the best place to look for is their straightforward sources.

More pointers in the Assembly HOWTO:
http://www.eleves.ens.fr:8080/home/rideau/Assembly

-- , , _ v ~ ^ --
-- Fare -- rid...@clipper.ens.fr -- Francois-Rene Rideau -- +)ang-Vu Ban --
-- ' / . --
Join the TUNES project for a computing system based on computing freedom !
TUNES is a Useful, Not Expedient System
WWW page at URL: "http://www.eleves.ens.fr:8080/home/rideau/Tunes/"

Scott Nudds

unread,
May 22, 1996, 3:00:00 AM5/22/96
to

In <4m5du6$5...@vixen.cso.uiuc.edu>, va...@prairienet.org (Vaqar Ahmed) wrote:

: I have a experience with ASM IBM 370. Now I am exploring ASM 80X86 language.


: I saw a instruction jmpi. It looks me kind of indirect jump, but
: I could not find any thing about it in any manual. The following is
: the segment for instruction:

: INITSEG = 0x9000
: jmpi go, INITSEG
: go: mov di,#0x4000-12

: If some one knows about it please let me know.

: Thanks

: Vaqar Ahmed


Not standard MASM syntax. Looks like a (FAR) jump to me. That is a
jump to a different segment.

--
<---->


0 new messages