ВУЗ:
Составители:
28
assume cs:cseg ; ;
public binasc ; е ;
push bp ; ; ;
mov bp,sp ; Сохранение ; ;
push ax ; содержимого ; г ;
push cx ; рабочих ; ;
push dx ; регистров ; ;
push di ; ; м ;
mov ax,[bp+6] ; Переводимое число -> ax ; ;
Продолжение прил.
mov di,[bp+8] ; Адрес результата -> di ; е ;
mov byte ptr[di],'+' ; Формирование ; ;
cmp ax,0 ; знака ; ;
jge poz ; в символьном ; н ;
mov byte ptr[di],'-' ; представлении ; ;
neg ax ; числа ; ;
poz: ; т ;
mov dx,0 ; ;
add di,4 ; ;
mov cx,4 ; ;
povt2: ; ;
div des ; Формирование ; ;
or dx,030h ; кода очередной ; ;
mov [di],dl ; цифры перево- ; ;
mov dx,0 ; димого числа ; к ;
dec di ; Переход к сле- ; ;
loop povt2 ; дующей цифре ; ;
; ; о ;
pop di ; Восстановление ; ;
pop dx ; содержимого ; ;
pop cx ; рабочих ; д ;
pop ax ; регистров ; ;
pop bp ; ; ;
ret 4 ; Возврат в вызывающую процедуру ; а ;
binasc endp ; ;
cseg ends ;------------------------------------------ ;
end
Библиотека макроопределений
assume cs:cseg ; ; public binasc ; е ; push bp ; ; ; mov bp,sp ; Сохранение ; ; push ax ; содержимого ; г ; push cx ; рабочих ; ; push dx ; регистров ; ; push di ; ; м ; mov ax,[bp+6] ; Переводимое число -> ax ; ; Продолжение прил. mov di,[bp+8] ; Адрес результата -> di ; е ; mov byte ptr[di],'+' ; Формирование ; ; cmp ax,0 ; знака ; ; jge poz ; в символьном ; н ; mov byte ptr[di],'-' ; представлении ; ; neg ax ; числа ; ; poz: ; т ; mov dx,0 ; ; add di,4 ; ; mov cx,4 ; ; povt2: ; ; div des ; Формирование ; ; or dx,030h ; кода очередной ; ; mov [di],dl ; цифры перево- ; ; mov dx,0 ; димого числа ; к ; dec di ; Переход к сле- ; ; loop povt2 ; дующей цифре ; ; ; ; о ; pop di ; Восстановление ; ; pop dx ; содержимого ; ; pop cx ; рабочих ; д ; pop ax ; регистров ; ; pop bp ; ; ; ret 4 ; Возврат в вызывающую процедуру ; а ; binasc endp ; ; cseg ends ;------------------------------------------ ; end Библиотека макроопределений 28
Страницы
- « первая
- ‹ предыдущая
- …
- 27
- 28
- 29
- 30
- 31
- …
- следующая ›
- последняя »