19.6. ASL 运算符参考
本节描述每个 ASL 运算符。给出了每个运算符的语法,并说明了每个参数以及运算符行为的总体描述。对于较复杂的运算符,提供了 ASL 示例代码。
ASL 运算符可分类如下:
命名对象创建
方法执行控制(If、Else、While 等)
整数数学运算
逻辑运算符
资源描述符宏
对象转换
实用程序/杂项
小节
- 19.6.1. AccessAs(更改字段单元访问)
- 19.6.2. Acquire(获取互斥量)
- 19.6.3. Add(整数加法)
- 19.6.4. Alias(声明名称别名)
- 19.6.5. And(整数按位与)
- 19.6.6. Argx(方法参数数据对象)
- 19.6.7. BankField(声明 Bank/Data 字段)
- 19.6.8. Break(从 While 中中断)
- 19.6.9. BreakPoint(执行断点)
- 19.6.10. Buffer(声明缓冲区对象)
- 19.6.11. Case(用于条件执行的情况表达式)
- 19.6.12. Concatenate(连接数据)
- 19.6.13. ConcatenateResTemplate(连接资源模板)
- 19.6.14. CondRefOf(有条件地创建对象引用)
- 19.6.15. Connection(声明字段连接属性)
- 19.6.16. Continue(继续最内层外围 While)
- 19.6.17. CopyObject(复制并存储对象)
- 19.6.18. CreateBitField(创建 1 位缓冲区字段)
- 19.6.19. CreateByteField(创建 8 位缓冲区字段)
- 19.6.20. CreateDWordField(创建 32 位缓冲区字段)
- 19.6.21. CreateField(创建任意长度缓冲区字段)
- 19.6.22. CreateQWordField(创建 64 位缓冲区字段)
- 19.6.23. CreateWordField(创建 16 位缓冲区字段)
- 19.6.24. CSI2Bus(CSI-2 串行总线连接资源描述符宏)
- 19.6.25. DataTableRegion(创建数据表操作区域)
- 19.6.26. Debug(调试器输出)
- 19.6.27. Decrement(整数递减)
- 19.6.28. Default(Switch 中的默认执行路径)
- 19.6.29. DefinitionBlock(声明定义块)
- 19.6.30. DerefOf(解引用对象引用)
- 19.6.31. Device(声明设备包)
- 19.6.32. Divide(整数除法)
- 19.6.33. DMA(DMA 资源描述符宏)
- 19.6.34. DWordIO(DWord I/O 资源描述符宏)
- 19.6.35. DWordMemory(DWord 内存资源描述符宏)
- 19.6.36. DWordSpace(DWord 空间资源描述符宏)
- 19.6.37. EISAID(EISA ID 字符串到整数转换宏)
- 19.6.38. Else(替代执行)
- 19.6.39. ElseIf(替代/条件执行)
- 19.6.40. EndDependentFn(结束依赖功能资源描述符宏)
- 19.6.41. Event(声明事件同步对象)
- 19.6.42. ExtendedIO(扩展 IO 资源描述符宏)
- 19.6.43. ExtendedMemory(扩展 Memory 资源描述符宏)
- 19.6.44. ExtendedSpace(扩展地址空间资源描述符宏)
- 19.6.45. External(声明外部对象)
- 19.6.46. Fatal(致命错误检查)
- 19.6.47. Field(声明字段对象)
- 19.6.48. 查找最左侧置位位
- 19.6.49. 查找最右侧置位位
- 19.6.50. FixedDMA(DMA 资源描述符宏)
- 19.6.51. FixedIO(固定 IO 资源描述符宏)
- 19.6.52. For(条件循环)
- 19.6.53. Fprintf(创建并存储格式化字符串)
- 19.6.54. FromBCD(将 BCD 转换为 Integer)
- 19.6.55. Function(声明控制方法)
- 19.6.56. GpioInt(GPIO 中断连接资源描述符宏)
- 19.6.57. GpioIo(GPIO 连接 IO 资源描述符宏)
- 19.6.58. I2CSerialBusV2(I2C 串行总线连接资源描述符(版本 2)宏)
- 19.6.59. If(条件执行)
- 19.6.60. Include(包含附加 ASL 文件)
- 19.6.61. Increment(整数递增)
- 19.6.62. Index(成员对象的索引引用)
- 19.6.63. IndexField(声明索引/数据字段)
- 19.6.64. Interrupt(中断资源描述符宏)
- 19.6.65. IO(IO 资源描述符宏)
- 19.6.66. IRQ(中断资源描述符宏)
- 19.6.67. IRQNoFlags(中断资源描述符宏)
- 19.6.68. LAnd(逻辑与)
- 19.6.69. LEqual(逻辑等于)
- 19.6.70. LGreater(逻辑大于)
- 19.6.71. LGreaterEqual(逻辑大于或等于)
- 19.6.72. LLess(逻辑小于)
- 19.6.73. LLessEqual(逻辑小于或等于)
- 19.6.74. LNot(逻辑非)
- 19.6.75. LNotEqual(逻辑不等于)
- 19.6.76. Load(加载定义块)
- 19.6.77. LoadTable(从 XSDT 加载定义块)
- 19.6.78. Localx(方法局部数据对象)
- 19.6.79. LOr(逻辑或)
- 19.6.80. Match(查找对象匹配)
- 19.6.81. Memory24(内存资源描述符宏)
- 19.6.82. Memory32(内存资源描述符宏)
- 19.6.83. Memory32Fixed(内存资源描述符宏)
- 19.6.84. Method(声明控制方法)
- 19.6.85. Mid(提取 Buffer 或 String 的一部分)
- 19.6.86. Mod(整数取模)
- 19.6.87. Multiply(整数乘法)
- 19.6.88. Mutex(声明同步/互斥对象)
- 19.6.89. Name(声明命名对象)
- 19.6.90. NAnd(整数按位 NAND)
- 19.6.91. NoOp Code(空操作)
- 19.6.92. NOr(整数按位 NOR)
- 19.6.93. Not(整数按位取反)
- 19.6.94. Notify(通知对象发生事件)
- 19.6.95. Offset(更改当前字段单元偏移)
- 19.6.96. ObjectType(获取对象类型)
- 19.6.97. One(常量值为一的整数)
- 19.6.98. Ones(全 1 常量整数)
- 19.6.99. OperationRegion(声明操作区域)
- 19.6.100. Or(整数按位或)
- 19.6.101. Package(声明 Package 对象)
- 19.6.102. PinConfig(引脚配置描述符宏)
- 19.6.103. PinFunction(引脚功能描述符宏)
- 19.6.104. PinGroup(引脚组描述符宏)
- 19.6.105. PinGroupConfig(引脚组配置描述符宏)
- 19.6.106. PinGroupFunction(引脚组功能配置描述符宏)
- 19.6.107. PowerResource(声明电源资源)
- 19.6.108. Printf(创建并存储格式化字符串)
- 19.6.109. QWordIO(QWord IO 资源描述符宏)
- 19.6.110. QWordMemory(QWord Memory 资源描述符宏)
- 19.6.111. QWordSpace(QWord 空间资源描述符宏)
- 19.6.112. RawDataBuffer(原始数据缓冲区)
- 19.6.113. RefOf(创建对象引用)
- 19.6.114. Register(通用寄存器资源描述符宏)
- 19.6.115. Release(释放 Mutex 同步对象)
- 19.6.116. Reset(重置 Event 同步对象)
- 19.6.117. ResourceTemplate(资源到缓冲区转换宏)
- 19.6.118. Return(从方法执行中返回)
- 19.6.119. Revision(常量修订整数)
- 19.6.120. Scope(打开命名作用域)
- 19.6.121. ShiftLeft(整数左移)
- 19.6.122. ShiftRight(整数右移)
- 19.6.123. Signal(发出同步 Event 信号)
- 19.6.124. SizeOf(获取数据对象大小)
- 19.6.125. Sleep(毫秒休眠)
- 19.6.126. SPISerialBusV2(SPI 串行总线连接资源描述符(版本 2)宏)
- 19.6.127. Stall(短时间停顿)
- 19.6.128. StartDependentFn(起始依赖函数资源描述符宏)
- 19.6.129. StartDependentFnNoPri(起始依赖函数资源描述符宏)
- 19.6.130. Store(存储对象)
- 19.6.131. Subtract(整数减法)
- 19.6.132. Switch(根据表达式选择要执行的代码)
- 19.6.133. ThermalZone(声明热区)
- 19.6.134. 定时器(获取 64 位定时器值)
- 19.6.135. ToBCD(将整数转换为 BCD)
- 19.6.136. ToBuffer(将数据转换为 Buffer)
- 19.6.137. ToDecimalString(将数据转换为十进制字符串)
- 19.6.138. ToHexString(将数据转换为十六进制字符串)
- 19.6.139. ToInteger(将数据转换为整数)
- 19.6.140. ToPLD(创建 _PLD Buffer 对象)
- 19.6.141. ToString(将 Buffer 转换为 String)
- 19.6.142. ToUUID(将字符串转换为 UUID 宏)
- 19.6.143. UARTSerialBusV2(UART 串行总线连接资源描述符版本 2 宏)
- 19.6.144. Unicode(字符串到 Unicode 转换宏)
- 19.6.145. VendorLong(长厂商资源描述符)
- 19.6.146. VendorShort(短厂商资源描述符)
- 19.6.147. Wait(等待同步事件)
- 19.6.148. While(条件循环)
- 19.6.149. WordBusNumber(Word 总线编号资源描述符宏)
- 19.6.150. WordIO(Word IO 资源描述符宏)
- 19.6.151. WordSpace(Word Space 资源描述符宏)
- 19.6.152. XOr(整数按位异或)
- 19.6.153. Zero(常量零整数)