Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Процедура в ассемблере 
:(
    Опции темы
hecz
Дата 2.12.2007, 22:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 2.12.2007

Репутация: нет
Всего: нет



нужно само тело программы оформить в виде процедуры вызываемой из главной программы. У меня небольшие проблеммы но думаю чтодляспециалиста это на 30 секунд где-то.... smile 

mydata    segment
tabl        db    '0123456789ABCDEF'
st1        db    '  '
mydata ends

my_stack    segment    stack
        dw    32 dup (?)
my_stack    ends

oursg    segment
    assume    cs:oursg, ds:mydata

; Код
begin:
    mov    ax, mydata
    mov    ds, ax
    xor    ax,ax

;myproc  proc
    mov    ax,0a5h
    not    ax
    add    ax,1
    push    ax
    push    ax
    mov    cl,7
    shr    ax,cl
    cmp    ax,0
    je    plus
    jne    minus

plus:    mov    dl,'+'
    mov    ah,2h
    int    21h
    jmp     contin
minus:    mov    dl,'-'
    mov    ah,2h
    int    21h

contin:    pop     ax
    mov    cl,4
    shr    ax,cl
    and    ax,15
    lea    bx, tabl
    xlat
    mov    dx,ax
    mov    ah,2h
    int    21h
;---------------------------
    pop     ax
    and    ax,15
    lea    bx, tabl
    xlat
    mov    dl,al
    mov    ah,2h
    int    21h
;-------------------------------------------
;ret
;myproc endp

;call    myproc
exit:    mov    ax, 4C00h
    int    21h
oursg    ends
end    begin[*]
PM MAIL   Вверх
MAKCim
Дата 2.12.2007, 23:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Воін дZэна
****


Профиль
Группа: Экс. модератор
Сообщений: 5644
Регистрация: 10.12.2005
Где: Менск, РБ

Репутация: 1
Всего: 207



hecz

M
MAKCim
Модератор: Используйте тег код!


Это сообщение отредактировал(а) MAKCim - 2.12.2007, 23:40


--------------------
Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі ©

PM MAIL   Вверх
dumb
Дата 3.12.2007, 02:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


sceloglauxalbifacies
****


Профиль
Группа: Экс. модератор
Сообщений: 2929
Регистрация: 16.6.2006

Репутация: 7
Всего: 158



Код

...
oursg    segment
    assume    cs:oursg, ds:mydata
; Код
myproc  proc
    mov    ax,0a5h
...
    ret
myproc endp

begin:
    mov    ax, mydata
    mov    ds, ax
    xor    ax,ax
    call    myproc
exit:
    mov    ax, 4C00h
    int    21h
oursg    ends
end    begin

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Asm для начинающих"
MAKCim
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • Не забывайте пользоваться кнопкой КОД.
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к разделу форума. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, MAKCim.

 
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Asm для начинающих | Следующая тема »


 




[ Время генерации скрипта: 0.0392 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.