Разработка линейных программ с использованием арифметических выражений для IBM PC/XT

Автор работы: Пользователь скрыл имя, 06 Октября 2013 в 20:39, практическая работа

Краткое описание

Вычислить выражение: (a*a+b*b+c*c+d*d)/(a+b+c+d).
Составить программу для вычисления заданного арифметического выражения: y:=(4(a-2b)+2)/(b+2a-1)
Даны три отрезка a, b и с и их величины. Необходимо выяснить можно ли построить из этих отрезков треугольник. Если да, то res = 1, иначе res = 0.

Вложенные файлы: 1 файл

ПР 1.docx

— 109.53 Кб (Скачать файл)


Условие задания

  1. Вычислить выражение: (a*a+b*b+c*c+d*d)/(a+b+c+d).
  2. Составить программу для вычисления заданного арифметического выражения: y:=(4(a-2b)+2)/(b+2a-1)
  1. Даны три отрезка a, b и с и их величины. Необходимо выяснить можно ли построить из этих отрезков треугольник. Если да, то res = 1, иначе res = 0.

 

Листинг программы №1

 

.model tiny  

stack 100h

.data           

a db 1

b db 1   

c db 1

d db 2

.code           

main:

mov al,a     

mul a

mov bl,al

mov al,b

mul b 

add bl,al

mov al,c

mul c

add bl,al

mov al,d

mul d

add bl,al 

mov al, a

mov cl, b

add al, cl

mov cl, c          

add al, cl

mov cl, d          

add al, cl

mov cl, al  

mov al, bl

div cl                   

end main

end

 

 

 

 

 

 

 

Результат работы программы №1

 

 

Рисунок 1 –  Окно запуска программы

 

 

 

Рисунок 2 – Результат программы

 

Листинг программы  №2

 

.model tiny  

.stack 100h

.data           

a db 3

b db 1    

l1 db 1

l2 db 2

.code           

main:

mov al,b     

mul l2

mov bl, a

sub bl, al

mov al, l2

mul l2

mul bl

mov bl, l2

add al, bl 

mov cl, al

mov al, a

mul l2

mov bl, b

add al, bl

mov bl, l1

sub al, bl

mov bl, al

mov al, cl

div bl       

end main

end

 

Результат работы программы №2

 

 

Рисунок 3 –  Окно запуска программы

 

 

 

Рисунок 4 –Результат программы

Листинг программы №3

 

.model tiny  

.stack 100h

.data           

a db 6

b db 3

c db 8   

no db "Nel'zya postroit' $"

yes db "Mojno postroit' $"

.code           

main:

mov al, a

mov bl, b

mov cl, c

cmp al, bl 

jg m1   

jmp m2

m1: ; a > b,c

cmp al, cl 

jl m3

   add bl, cl 

cmp al, bl

  jg net

  jmp da

m2: ; b > a,c

cmp bl, cl 

jl m3

   add al, cl

   cmp bl, al

   jg net

  jmp da

m3: ; c > a,b

  add al, bl

   cmp cl, al

   jg net

jmp da

da:

mov dx, offset yes

mov ah, 9

int 21h

jmp m0

net:

mov dx, offset no

mov ah, 9

int 21h

jmp m0

m0:

mov dl, 0  

end main

Результат работы программы №3

 

 

Рисунок 5 –  Результат программы

 

 

Выводы по результатам проделанной работы

 

Результатом проделанной работы является получение теоретических и практических знаний о приемах разработки линейных программ с использованием арифметических выражений для IBM PC/XT.

 

 

 

 

 

 

 

 

 

 

 

 


 


Информация о работе Разработка линейных программ с использованием арифметических выражений для IBM PC/XT