首页 > 解决方案 > 如何将 [es:di] 重写为 att 语法

问题描述

这是一个简短的问题,但我没有设法在网上找到答案。

你如何重mov [es:di], dl写成 AT&T 语法?

我用它在实模式下将一个像素写入屏幕。

标签: assemblyx86-16attaddressing-modememory-segmentation

解决方案


mov %dl, %es:(%di)

在 AT&T 语法中,内存以下列方式引用:

segment-override:signed-offset(base,index,scale)

根据您想要的地址,可以省略其中的部分。

%es:100(%eax,%ebx,2)

相应的Intel 语法间接内存参考:

segment-override:[base + index*scale + signed-offset]

es:[eax + ebx*2 + 100]


推荐阅读