what does "outb" in AT&T asm mean?
Asked Answered
S

2

10

I am reading some code of Linux. The keyboard.S has something like

outb %al,$0x61

and

inb $0x61,%al

I think the pending 'b' means 'byte', but i still cannot find what these instructions mean.

Seize answered 3/12, 2011 at 5:27 Comment(2)
Intel cores have an I/O bus, distinct from the memory bus. Port 0x61 is a keyboard control register. tek-tips.com/viewthread.cfm?qid=258828Hamburger
Possible duplicate of What are IN & OUT instructions in x86 used for?Letreece
L
20

OUT and IN are instructions for transferring data between I/O ports. Those are a couple of links I found which provide a bit more information.

As you mentioned, the b is the byte form of those instructions, which is appropriate since you're using the lower byte of ax (al).

Lambart answered 3/12, 2011 at 5:36 Comment(0)
H
5

Yes, the out port and in port instructions can be encoded for 8 bits of data or 16 bits of data. The b indicates byte which is the 8 bit version.

Hankow answered 3/12, 2011 at 5:32 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.