Вычислить элементы нового массива из значений трёх заданных массивов - Assembler

Узнай цену своей работы

Формулировка задачи:

Даны 3 массива (a,b,c) с любыми значениями (вписать при объявлении массива) , посчитать по формуле b+(4/c-a). Размерность массивов 5 элементов в каждом! P.s Помогите написать программу, просто с ассемблером не давно знаком, и что то я еще в нем ничего не понимаю((

Решение задачи: «Вычислить элементы нового массива из значений трёх заданных массивов»

textual
Листинг программы
  1. .model small
  2.  
  3. .stack 100h
  4.  
  5. .data
  6.         A       dw      1, 2, 3, 4, 5
  7.         B       dw      6, 7, 8, 9, 10
  8.         C       dw      11, 12, 13, 14, 15
  9.         X       dw      5 dup(0)
  10. .code
  11.  
  12. main    proc
  13.         mov     ax,     @data
  14.         mov     ds,     ax
  15.  
  16.         mov     cx,     5
  17.         mov     si,     0
  18. @@ForI:
  19.         mov     ax,     4
  20.         cwd
  21.         mov     bx,     C[si]
  22.         idiv    bx              ;ax:=4/C[i]
  23.         sub     ax,     A[si]   ;ax:=(4/C[i])-A[i]
  24.         add     ax,     B[si]   ;ax:=B[i]+(4/C[i])-A[i]
  25.         mov     X[si],  ax
  26.         add     si,     2       ;перейти к следующему элементу массива
  27.         loop    @@ForI
  28.  
  29.         mov     ax,     4C00h
  30.         int     21h
  31. main    endp
  32.  
  33. end     main

Объяснение кода листинга программы

  1. Объявление массивов A, B, C и X
  2. Загрузка сегмента данных в регистр DS
  3. Переменная CX и SI используются как счётчики для перебора элементов массива
  4. Начальное значение переменной AX устанавливается равным 4
  5. Выполняется деление AX на элемент массива C, сохранённый в регистре BX
  6. Результат деления вычитается из элемента массива A, сохранённого в регистре AX
  7. К полученному результату прибавляется элемент массива B, сохранённый в регистре AX
  8. Полученное значение записывается в элемент массива X
  9. Значение счётчика SI увеличивается на 2 для перехода к следующему элементу массива
  10. Цикл продолжается до тех пор, пока не будет выполнено условие окончания цикла
  11. Завершение работы программы

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 4.333 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы