ВУЗ:
Составители:
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
- …
- следующая ›
- последняя »
