【发布时间】:2017-11-29 15:48:58
【问题描述】:
1.XLAT有什么作用?
2。我们为什么要使用它?
【问题讨论】:
-
即使是“x86 xlat”搜索引擎上的第一个结果也非常彻底地解释了这件事。 felixcloutier.com/x86/XLAT:XLATB.html
-
@Zahid Khan:在下面阅读我的答案
-
表被指定为 DS:BX(BX 是表开头的内存偏移量)。 AL 是表中的索引。 XLAT 将简单地返回索引 AL 处的值
-
举个例子。我最近写了这个SO answer,它使用 XLAT 将字节转换为 HEX 字符。特别是函数
print_byte_hex。该代码用于 16 位实模式。 XLAT 用于将值 0 到 15 转换为 ASCII 值 '0 到 '9' 和 'A' 到 'F' -
@ZahidKhan 可能(我猜,我没有投反对票)因为搜索“x86 xlat 指令”会返回许多相关资源,很难想象你不清楚什么,你会复制吗几乎没有什么问题,并解释你是如何理解它们的,或者究竟是什么,看起来你的问题付出了更多的努力。
xlat使用的“表”是ds:(e/r)bx指向的任意256B 内存区域,返回的字节从地址ds:(e/r)bx+al加载。程序员可以将带有一些地址的ds:bx设置为一些有用的数据(“表”),以将al转换为tab[al]。
标签: assembly x86 instructions