Привет всем, я новичок в сборке, и мне трудно понять, почему код ниже работает.Я узнал, что si содержит адрес сегмента данных, и поскольку a и b находятся в разных местах сегмента данных, он не может использоваться для них обоих, и мне пришлось бы использовать di для b.Но по какой-то причине приведенный ниже код (который копирует первый символ a в первый символ b) работает нормально
.model small
.stack 100H
.data
a db ' This is a test $'
b db 100 dup('$')
.code
mov si,0
mov al,a[si]
mov b[si],al
.exit
end
Мое основное недоразумение - в чем разница между a [si] и b [si] и [Си] любое объяснение будет высоко оценено.