19.6.65. IO(IO 资源描述符宏)
语法 :
IO (Decode , AddressMin, AddressMax, AddressAlignment, RangeLength, DescriptorName) => Buffer
参数
Decode 描述 I/O 范围使用的是 10 位译码(Decode10)还是 16 位译码(Decode16)。字段 DescriptorName._DEC 会被自动创建以引用资源描述符的这部分,其中“1”表示 Decode16,“0”表示 Decode10。
AddressMin 求值为一个 16 位整数,用于指定 I/O 范围可接受的最小起始地址。它必须是 AddressAlignment 的偶数倍。字段 DescriptorName._MIN 会被自动创建以引用资源描述符的这部分。
AddressMax 求值为一个 16 位整数,用于指定 I/O 范围可接受的最大起始地址。它必须是 AddressAlignment 的偶数倍。字段 DescriptorName._MAX 会被自动创建以引用资源描述符的这部分。
AddressAlignment 求值为一个 8 位整数,用于指定所分配 I/O 地址的对齐粒度。字段 DescriptorName._ALN 会被自动创建以引用资源描述符的这部分。
RangeLength 求值为一个 8 位整数,用于指定 I/O 范围中的字节数。字段 DescriptorName._LEN 会被自动创建以引用资源描述符的这部分。
DescriptorName 是一个可选参数,用于指定一个整数常量的名称,该常量将在当前作用域中创建,并包含此资源描述符在当前资源模板缓冲区内的偏移量。预定义的描述符字段名称可以附加到该名称后,以通过 Buffer Field 运算符访问描述符中的各个字段。
说明
IO 宏求值为一个包含 IO 资源描述符的缓冲区。IO 描述符的格式见第 6.4.2.5 节。此宏设计用于 ResourceTemplate(资源到缓冲区转换宏)内部。