Я новичок в среде: низкоуровневого программирования. Нашел интересную задачку: Имеются два массива восьми битных целых чисел со знаком. Сформировать массив частных от целочисленного деления соответствующих элементов этих массивов. Показать все три массива. Прошу помочь ее решить. (написать на эмуляторе emu8086)
Конечно, я могу помочь вам с этим. Вот пример кода на ассемблере для эмулятора emu8086, который решает вашу задачу:
.model small .stack 100h .data array1 db 10, 20, 30, 40, 50, 60, 70, 80 array2 db 2, 3, 4, 5, 6, 7, 8, 9 result db 8 dup(?) .code mov ax, @data mov ds, ax mov cx, 8 ; количество элементов в массиве mov bx, 0 ; счетчик элементов calculate: mov al, array1[bx] cwd idiv array2[bx] mov result[bx], al inc bx loop calculate mov cx, 8 ; вывод результатов mov bx, 0 display: mov al, result[bx] add al, 30h ; для правильного отображения в ASCII mov ah, 02h int 21h inc bx loop display mov ah, 4ch int 21h end
Этот код проходит через элементы обоих массивов, вычисляет частное от деления их элементов, и сохраняет результаты в третий массив result. Затем он выводит содержимое третьего массива на экран.
Надеюсь, этот пример будет полезен для вас! Если у вас возникнут дополнительные вопросы, не стесняйтесь задавать.
Конечно, я могу помочь вам с этим. Вот пример кода на ассемблере для эмулятора emu8086, который решает вашу задачу:
.model small.stack 100h
.data
array1 db 10, 20, 30, 40, 50, 60, 70, 80
array2 db 2, 3, 4, 5, 6, 7, 8, 9
result db 8 dup(?)
.code
mov ax, @data
mov ds, ax
mov cx, 8 ; количество элементов в массиве
mov bx, 0 ; счетчик элементов
calculate:
mov al, array1[bx]
cwd
idiv array2[bx]
mov result[bx], al
inc bx
loop calculate
mov cx, 8 ; вывод результатов
mov bx, 0
display:
mov al, result[bx]
add al, 30h ; для правильного отображения в ASCII
mov ah, 02h
int 21h
inc bx
loop display
mov ah, 4ch
int 21h
end
Этот код проходит через элементы обоих массивов, вычисляет частное от деления их элементов, и сохраняет результаты в третий массив result. Затем он выводит содержимое третьего массива на экран.
Надеюсь, этот пример будет полезен для вас! Если у вас возникнут дополнительные вопросы, не стесняйтесь задавать.