Я сохранил определенные данные в ячейке памяти 0x4000. Я хотел передать байт оттуда в ячейку памяти 0xb800, чтобы данные печатались на экране. Проблема возникает, когда я пытаюсь сохранить в 0xb800:0 свой первый байт, который, как я полагаю, находится в 0x4000:0. Код, который я использовал в качестве примера, приведен ниже:
mov ax, 0xb800
mov es, ax
mov byte [es:0], 'A'
Это прекрасно компилируется и работает отлично, но то, что я пытаюсь адаптировать, выдает ошибку «недопустимое переопределение сегмента» в NASM. Вот мой нерабочий код:
mov ax, 0xb800
mov es, ax
mov byte [es:0], byte [0x4000:0]
Можно ли получить один байт из 0x4000:[смещение] и передать его в 0xb800:[смещение] с помощью сегмента ES? Если да, то как?