假设我正在编写一个虚拟机。我将程序数据读入一个字节数组。现在我需要遍历这些字节(指令是两个字节)并实例化一个代表每条指令及其参数的小类。
什么是快速解析方法?这是我想到的两种方式:
- 通过检查从左到右的每一位进行逻辑分支,直到我将其缩小到特定的操作码。这就像二进制搜索。
- 检查一些程序以提供按使用频率排序的操作码列表,然后按该顺序检查完整的操作码。
注意:我将在 C 中使用位移位和掩码来检查,而不是正则表达式或字符串组合或任何类似的高级。
假设我正在编写一个虚拟机。我将程序数据读入一个字节数组。现在我需要遍历这些字节(指令是两个字节)并实例化一个代表每条指令及其参数的小类。
什么是快速解析方法?这是我想到的两种方式:
注意:我将在 C 中使用位移位和掩码来检查,而不是正则表达式或字符串组合或任何类似的高级。