Как в ассемблере понимать двоеточие?
Например:
DS:SI
ES:DI
EDX:EAX.
Что это значит может кто-то объяснить популярный языком, а не книжным.
Например:
DS:SI
ES:DI
EDX:EAX.
Что это значит может кто-то объяснить популярный языком, а не книжным.
Интересно, что может быть тут непонятного? Это просто "расширение".
Оно также может быть и в абсолютных значениях A000:C001
То что до двоеточия - старшая часть, после - младшая.
То есть, если DS = 1000, SI = 2000, DS:SI = 100D:200C = 100D200C
Просто тупо записываем подряд как без двоеточия и всё.
В первых двух случаях - адрес, состоящий из сегмента и смещения, в третьем - QWORD хранящийся в двух регистрах, который например может вернуть mul при соответствующем вызове.
В числовом обозначении используется для удобства и подчеркивает разбиение на слова. Для регистров является признаком того, что в них хранится одно значение, разделенное на два этих регистра.