* better
[mascara-docs.git] / hw / i386.reference / OR.htm
blobd2425c298a49abc075e04cab4ba888924e75b321
1 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
2 <HTML>
3 <HEAD>
4 <TITLE>80386 Programmer's Reference Manual -- Opcode OR</TITLE>
5 </HEAD>
6 <BODY>
7 <B>up:</B> <A HREF="c17.htm">
8 Chapter 17 -- 80386 Instruction Set</A><BR>
9 <B>prev:</B><A HREF="NOT.htm"> NOT One's Complement Negation</A><BR>
10 <B>next:</B><A HREF="OUT.htm"> OUT Output to Port</A>
11 <P>
12 <HR>
13 <P>
14 <H1>OR -- Logical Inclusive OR</H1>
16 <PRE>
17 Opcode Instruction Clocks Description
19 0C ib OR AL,imm8 2 OR immediate byte to AL
20 0D iw OR AX,imm16 2 OR immediate word to AX
21 0D id OR EAX,imm32 2 OR immediate dword to EAX
22 80 /1 ib OR r/m8,imm8 2/7 OR immediate byte to r/m byte
23 81 /1 iw OR r/m16,imm16 2/7 OR immediate word to r/m word
24 81 /1 id OR r/m32,imm32 2/7 OR immediate dword to r/m dword
25 83 /1 ib OR r/m16,imm8 2/7 OR sign-extended immediate byte
26 with r/m word
27 83 /1 ib OR r/m32,imm8 2/7 OR sign-extended immediate byte
28 with r/m dword
29 08 /r OR r/m8,r8 2/6 OR byte register to r/m byte
30 09 /r OR r/m16,r16 2/6 OR word register to r/m word
31 09 /r OR r/m32,r32 2/6 OR dword register to r/m dword
32 0A /r OR r8,r/m8 2/7 OR byte register to r/m byte
33 0B /r OR r16,r/m16 2/7 OR word register to r/m word
34 0B /r OR r32,r/m32 2/7 OR dword register to r/m dword
35 </PRE>
38 <H2>Operation</H2>
40 <PRE>
41 DEST := DEST OR SRC;
42 CF := 0;
43 OF := 0
44 </PRE>
46 <H2>Description</H2>
48 OR computes the inclusive OR of its two operands and places the result
49 in the first operand. Each bit of the result is 0 if both corresponding
50 bits of the operands are 0; otherwise, each bit is 1.
52 <H2>Flags Affected</H2>
54 OF := 0, CF := 0; SF, ZF, and PF as described in <A HREF="appc.htm">Appendix C</A>; AF is
55 undefined
57 <H2>Protected Mode Exceptions</H2>
59 #GP(0) if the result is in a nonwritable segment; #GP(0) for an illegal
60 memory operand effective address in the CS, DS, ES, FS, or GS
61 segments; #SS(0) for an illegal address in the SS segment; #PF(fault-code)
62 for a page fault
64 <H2>Real Address Mode Exceptions</H2>
66 Interrupt 13 if any part of the operand would lie outside of the effective
67 address space from 0 to 0FFFFH
69 <H2>Virtual 8086 Mode Exceptions</H2>
71 Same exceptions as in real-address mode; #PF(fault-code) for a page
72 fault
75 <P>
76 <HR>
77 <P>
78 <B>up:</B> <A HREF="c17.htm">
79 Chapter 17 -- 80386 Instruction Set</A><BR>
80 <B>prev:</B><A HREF="NOT.htm"> NOT One's Complement Negation</A><BR>
81 <B>next:</B><A HREF="OUT.htm"> OUT Output to Port</A>
82 </BODY>