20.3. AML 字节流字节值
下表列出了在 AML 字节流中可找到的所有字节值,以及每个字节值的含义。该表对于调试 AML 代码很有用。
表 20.2 AML 字节流字节值
| 编码值 | 编码名称 | 编码组 | 固定列表参数 | 可变列表参数 |
|---|---|---|---|---|
| 0x00 | ZeroOp | 数据对象 | — | — |
| 0x01 | OneOp | 数据对象 | — | — |
| 0x02-0x05 | — | — | — | — |
| 0x06 | AliasOp | 术语对象 | 名称字符串 名称字符串 | — |
| 0x07 | — | — | — | — |
| 0x08 | NameOp | 术语对象 | 名称字符串 数据引用对象 | — |
| 0x09 | — | — | — | — |
| 0x0A | BytePrefix | 数据对象 | 字节数据 | — |
| 0x0B | WordPrefix | 数据对象 | 字数据 | — |
| 0x0C | DWordPrefix | 数据对象 | 双字数据 | — |
| 0x0D | StringPrefix | 数据对象 | ASCII 字符列表 空字符 | — |
| 0x0E | QWordPrefix | 数据对象 | 四字数据 | — |
| 0x0F | — | — | — | — |
| 0x10 | ScopeOp | 术语对象 | 名称字符串 | 术语列表 |
| 0x11 | BufferOp | 术语对象 | 术语参数 | 字节列表 |
| 0x12 | PackageOp | 术语对象 | 字节数据 | 包和术语列表 |
| 0x13 | VarPackageOp | 术语对象 | 术语参数 | 包和术语列表 |
| 0x14 | MethodOp | 术语对象 | 名称字符串 字节数据 | 术语列表 |
| 0x15 | ExternalOp | 名称对象 | 名称字符串 字节数据 字节数据 | — |
| 0x16-0x2D | — | — | — | — |
| 0x2E (‘.’) | DualNamePrefix | 名称对象 | 名称段 名称段 | — |
| 0x2F (‘/’) | MultiNamePrefix | 名称对象 | 字节数据 名称段(N) | — |
| 0x30-0x39 (‘0’-‘9’) | DigitChar | 名称对象 | — | — |
| 0x3A-0x40 | — | — | — | — |
| 0x41-0x5A (‘A’-‘Z’) | NameChar | 名称对象 | — | — |
| 0x5B (‘[‘) | ExtOpPrefix | — | 字节数据 | — |
| 0x5B 0x00 | — | — | — | — |
| 0x5B 0x01 | MutexOp | 术语对象 | 名称字符串 字节数据 | — |
| 0x5B 0x02 | EventOp | 术语对象 | 名称字符串 | — |
| 0x5B 0x12 | CondRefOfOp | 术语对象 | 超级名称 超级名称 | — |
| 0x5B 0x13 | CreateFieldOp | 术语对象 | 术语参数 术语参数 术语参数 名称字符串 | — |
| 0x5B 0x1F | LoadTableOp | 术语对象 | 术语参数 术语参数 术语参数 术语参数 术语参数 术语参数 | — |
| 0x5B 0x20 | LoadOp | 术语对象 | 名称字符串 超级名称 | — |
| 0x5B 0x21 | StallOp | 术语对象 | 术语参数 | — |
| 0x5B 0x22 | SleepOp | 术语对象 | 术语参数 | — |
| 0x5B 0x23 | AcquireOp | 术语对象 | 超级名称 字数据 | — |
| 0x5B 0x24 | SignalOp | 术语对象 | 超级名称 | — |
| 0x5B 0x25 | WaitOp | 术语对象 | 超级名称 术语参数 | — |
| 0x5B 0x26 | ResetOp | 术语对象 | 超级名称 | — |
| 0x5B 0x27 | ReleaseOp | 术语对象 | 超级名称 | — |
| 0x5B 0x28 | FromBCDOp | 术语对象 | 术语参数 目标 | — |
| 0x5B 0x29 | ToBCD | 术语对象 | 术语参数 目标 | — |
| 0x5B 0x2A | 保留 | — | — | — |
| 0x5B 0x30 | RevisionOp | 数据对象 | — | — |
| 0x5B 0x31 | DebugOp | 调试对象 | — | — |
| 0x5B 0x32 | FatalOp | 术语对象 | 字节数据 双字数据 术语参数 | — |
| 0x5B 0x33 | TimerOp | 术语对象 | — | — |
| 0x5B 0x80 | OpRegionOp | 术语对象 | 名称字符串 字节数据 术语参数 术语参数 | — |
| 0x5B 0x81 | FieldOp | 术语对象 | 名称字符串 字节数据 | 字段列表 |
| 0x5B 0x82 | DeviceOp | 术语对象 | 名称字符串 | 术语列表 |
| 0x5B 0x83 | 永久保留 | — | 在 ACPI 6.4 中,此操作码用于 ProcessorOp 的用法已被弃用,且不得重新使用。 | — |
| 0x5B 0x84 | PowerResOp | 术语对象 | 名称字符串 字节数据 字数据 | 术语列表 |
| 0x5B 0x85 | ThermalZoneOp | 术语对象 | 名称字符串 | 术语列表 |
| 0x5B 0x86 | IndexFieldOp | 术语对象 | 名称字符串 名称字符串 字节数据 | 字段列表 |
| 0x5B 0x87 | BankFieldOp | 术语对象 | 名称字符串 名称字符串 术语参数 字节数据 | 字段列表 |
| 0x5B 0x88 | DataRegionOp | 术语对象 | 名称字符串 术语参数 术语参数 术语参数 | — |
| 0x5B 0x80 - 0x5B 0xFF | — | — | — | — |
| 0x5C (‘\’) | RootChar | 名称对象 | — | — |
| 0x5D | — | — | — | — |
| 0x5E (‘^’) | ParentPrefixChar | 名称对象 | — | — |
| 0x5F(‘_’) | NameChar— | 名称对象 | — | — |
| 0x60 (‘`’) | Local0Op | 局部对象 | — | — |
| 0x61 (‘a’) | Local1Op | 局部对象 | — | — |
| 0x62 (‘b’) | Local2Op | 局部对象 | — | — |
| 0x63 (‘c’) | Local3Op | 局部对象 | — | — |
| 0x64 (‘d’) | Local4Op | 局部对象 | — | — |
| 0x65 (‘e’) | Local5Op | 局部对象 | — | — |
| 0x66 (‘f’) | Local6Op | 局部对象 | — | — |
| 0x67 (‘g’) | Local7Op | 局部对象 | — | — |
| 0x68 (‘h’) | Arg0Op | 参数对象 | — | — |
| 0x69 (‘i’) | Arg1Op | 参数对象 | — | — |
| 0x6A (‘j’) | Arg2Op | 参数对象 | — | — |
| 0x6B (‘k’) | Arg3Op | 参数对象 | — | — |
| 0x6C (‘l’) | Arg4Op | 参数对象 | — | — |
| 0x6D (‘m’) | Arg5Op | 参数对象 | — | — |
| 0x6E (‘n’) | Arg6Op | 参数对象 | — | — |
| 0x6F | — | — | — | — |
| 0x70 | StoreOp | 术语对象 | 术语参数 超级名称 | — |
| 0x71 | RefOfOp | 术语对象 | 超级名称 | — |
| 0x72 | AddOp | 术语对象 | 术语参数 术语参数 目标 | — |
| 0x73 | ConcatOp | 术语对象 | 术语参数 术语参数 目标 | — |
| 0x74 | SubtractOp | 术语对象 | 术语参数 术语参数 目标 | — |
| 0x75 | IncrementOp | 术语对象 | 超级名称 | — |
| 0x76 | DecrementOp | 术语对象 | 超级名称 | — |
| 0x77 | MultiplyOp | 术语对象 | 术语参数 术语参数 目标 | — |
| 0x78 | DivideOp | 术语对象 | 术语参数 术语参数 目标 目标 | — |
| 0x79 | ShiftLeftOp | 术语对象 | 术语参数 术语参数 目标 | — |
| 0x7A | ShiftRightOp | 术语对象 | 术语参数 术语参数 目标 | — |
| 0x7B | AndOp | 术语对象 | 术语参数 术语参数 目标 | — |
| 0x7C | NandOp | 术语对象 | 术语参数 术语参数 目标 | — |
| 0x7D | OrOp | 术语对象 | 术语参数 术语参数 目标 | — |
| 0x7E | NorOp | 术语对象 | 术语参数 术语参数 目标 | — |
| 0x7F | XorOp | 术语对象 | 术语参数 术语参数 目标 | — |
| 0x80 | NotOp | 术语对象 | 术语参数 目标 | — |
| 0x81 | FindSetLeftBitOp | 术语对象 | 术语参数 目标 | — |
| 0x82 | FindSetRightBitOp | 术语对象 | 术语参数 目标 | — |
| 0x83 | DerefOfOp | 术语对象 | 术语参数 | — |
| 0x84 | ConcatResOp | 术语对象 | 术语参数 术语参数 目标 | — |
| 0x85 | ModOp | 术语对象 | 术语参数 术语参数 目标 | — |
| 0x86 | NotifyOp | 术语对象 | 超级名称 术语参数 | — |
| 0x87 | SizeOfOp | 术语对象 | 超级名称 | — |
| 0x88 | IndexOp | 术语对象 | 术语参数 术语参数 目标 | — |
| 0x89 | MatchOp | 术语对象 | 术语参数 字节数据 术语参数 字节数据 术语参数 术语参数 | — |
| 0x8A | CreateDWordFieldOp | 术语对象 | 术语参数 术语参数 名称字符串 | — |
| 0x8B | CreateWordFieldOp | 术语对象 | 术语参数 术语参数 名称字符串 | — |
| 0x8C | CreateByteFieldOp | 术语对象 | 术语参数 术语参数 名称字符串 | — |
| 0x8D | CreateBitFieldOp | 术语对象 | 术语参数 术语参数 名称字符串 | — |
| 0x8E | ObjectTypeOp | 术语对象 | 超级名称 | — |
| 0x8F | CreateQWordFieldOp | 术语对象 | 术语参数 术语参数 名称字符串 | — |
| 0x90 | LandOp | 术语对象 | 术语参数 术语参数 | — |
| 0x91 | LorOp | 术语对象 | 术语参数 术语参数 | — |
| 0x92 | LnotOp | 术语对象 | 术语参数 | — |
| 0x92 0x93 | LNotEqualOp | 术语对象 | 术语参数 术语参数 | — |
| 0x92 0x94 | LLessEqualOp | 术语对象 | 术语参数 术语参数 | — |
| 0x92 0x95 | LGreaterEqualOp | 术语对象 | 术语参数 术语参数 | — |
| 0x93 | LEqualOp | 术语对象 | 术语参数 术语参数 | — |
| 0x94 | LGreaterOp | 术语对象 | 术语参数 术语参数 | — |
| 0x95 | LLessOp | 术语对象 | 术语参数 术语参数 | — |
| 0x96 | ToBufferOp | 术语对象 | 术语参数 目标 | — |
| 0x97 | ToDecimalStringOp | 术语对象 | 术语参数 目标 | — |
| 0x98 | ToHexStringOp | 术语对象 | 术语参数 目标 | — |
| 0x99 | ToIntegerOp | 术语对象 | 术语参数 目标 | — |
| 0x9A-0x9B | — | — | — | — |
| 0x9C | ToStringOp | 术语对象 | 术语参数 术语参数 目标 | — |
| 0x9D | CopyObjectOp | 术语对象 | 术语参数 简单名称 | — |
| 0x9E | MidOp | 术语对象 | 术语参数 术语参数 术语参数 目标 | — |
| 0x9F | ContinueOp | 术语对象 | — | — |
| 0xA0 | IfOp | 术语对象 | 术语参数 | 术语列表 |
| 0xA1 | ElseOp | 术语对象 | — | 术语列表 |
| 0xA2 | WhileOp | 术语对象 | 术语参数 | 术语列表 |
| 0xA3 | NoopOp | 术语对象 | — | — |
| 0xA4 | ReturnOp | 术语对象 | 术语参数 | — |
| 0xA5 | BreakOp | 术语对象 | — | — |
| 0xA6-0xCB | — | — | — | — |
| 0xCC | BreakPointOp | 术语对象 | — | — |
| 0xCD-0xFE | — | — | — | — |
| 0xFF | OnesOp | 数据对象 | — | — |