Вычисление выражения по формуле с ветвлением - Assembler (223334)

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

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

помогите расписать эту формулу на тасм

Решение задачи: «Вычисление выражения по формуле с ветвлением»

textual
Листинг программы
  1. .model small
  2.  
  3. .stack 100h
  4.  
  5. .data
  6.         X       dw      7
  7.         Y       dw      ?
  8.         A       dw      9
  9.         B       dw      -8
  10. .code
  11.  
  12. main    proc
  13.         mov     ax,     @data
  14.         mov     ds,     ax
  15.  
  16.         cmp     word ptr X,     9
  17.         jge     Second
  18.  
  19.         mov     ax,     A
  20.         add     ax,     ax
  21.         add     ax,     ax      ;ax:=4*A
  22.  
  23.         sub     ax,     X       ;ax:=4*A-X
  24.         cwd                     ;(dx:ax):=4*A-X
  25.  
  26.         mov     bx,     B
  27.         add     bx,     bx
  28.         add     bx,     bx
  29.         add     bx,     B       ;bx:=5*B
  30.  
  31.         idiv    bx              ;ax:=(ax/bx)
  32.  
  33.         mov     bx,     ax
  34.         imul    bx
  35.         imul    bx              ;ax:=(ax)^3
  36.  
  37.         add     ax,     1
  38.         jmp     @@Exit
  39.  
  40. Second:
  41.         mov     ax,     A
  42.         add     ax,     ax
  43.         add     ax,     ax      ;ax:=4*A
  44.  
  45.         add     ax,     X       ;ax:=4*A+X
  46.         cwd                     ;(dx:ax):=4*A+X
  47.  
  48.         mov     bx,     B
  49.         add     bx,     bx
  50.         add     bx,     bx
  51.         add     bx,     B       ;bx:=5*B
  52.  
  53.         idiv    bx              ;ax:=(ax/bx)
  54.  
  55.         mov     bx,     ax
  56.         imul    bx
  57.         imul    bx              ;ax:=(ax)^3
  58.  
  59.         add     ax,     1
  60. @@Exit:
  61.         mov     word ptr Y,     ax
  62.  
  63.         mov     ax,     4C00h
  64.         int     21h
  65. main    endp
  66.  
  67. end     main

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


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

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

12   голосов , оценка 4.5 из 5

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

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

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