Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.03.2011, 18:44   #1
grongost
Пользователь
 
Регистрация: 09.09.2010
Сообщений: 12
По умолчанию Разработка и использование подпрограмм

Составить подпрограмму для вычисления суммы:
for I:=1 to N do S:=S+2^i*x
Подпрограмму разместить во внешнем файле. Параметры (x, n) в подпрограмму передать через стек. Результат возвратить в регистре ax. В основной программе организовать вызов подпрограммы для следующих наборов исходных данных:
a) x = 2; n = 2; b) x = -2; n = 3; c) x = 10; n = 8
ответы:
a)000c
b)ffe4
c)13ec

main

Код:
.model small	
.stack 100h
extrn summa:proc
.data
x dw 10
n dw 8
y dw ?
.Code
 begin:	mov ax,@Data  
          mov ds,ax
          xor ax,ax
         	mov bx,x
         	mov cx,n 
         	call summa
         	mov ax,y
          mov ah,4ch 
          int 21h      
end begin

sum

Код:
.model small	
.code
begin:
summa proc
public summa
push bp
mov bp,sp
mov bx,[bp+6]  ;x
mov cx,[bp+4]  ;N	
for:add bx,bx
    add ax,bx
loop for 
pop bp  
ret 4
summa endp
end begin
В подпрограмме (sum) считает всё нормально если поставить числа.

1.Не получается вызвать подпрограмму и занести в неё данные из основную программу (main) и следовательно вернутся опять в главную форму и записать ответ в регистр ах.
2.Надо как-то организовать, чтобы поочерёдно считало данные a), b), c) и записывало в ответ.
grongost вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
использование подпрограмм ANutaStar Паскаль, Turbo Pascal, PascalABC.NET 0 12.12.2010 12:59
Использование подпрограмм... 7NoName7 Помощь студентам 0 11.05.2010 16:26
Использование подпрограмм бургер Паскаль, Turbo Pascal, PascalABC.NET 5 29.04.2010 04:21
Использование подпрограмм inferno fm Общие вопросы Delphi 2 19.09.2009 18:37