...потому что операционная система в наше время бывает либо 32-битная,либо 64-битная.Поэтому использование 16-битных регистров без конкретной необходимости не имеет смысла.
То,что вы сейчас спрашиваете - это ассемблер - к Дельфям имеет мало отношения.Но с другой стороны,ассемблер - это основа программирования,поэтому постараюсь немного объяснить.
Если вы обращаетесь в массиву данных,то вы должны точно указать с каким размером данных (типом данных) вы сейчас работаете.Вообще есть только три основных типа данных: байт,слово и двойное слово(1 байт,2 байта и 4 байта соответственно).В данной функции вы работаете байтами,поэтому обращение к массиву нужно выделить с помощью byte ptr, т.е. byte pointer.Если бы вы хотели доставать из массива по четыре байта за раз,то вы бы написали:
Код:
mov eax, dword ptr buf2[ebx]
mov dword ptr kzu[ebx], eax
Что-то вроде того.По ассемблеру из книг обычно советуют Юрова,несмотря на то,что он далеко не идеален.