Решения задачи
#9.
1. Условие
задачи
2.
Решение by Serj (7 байт)
3.
Решение by Ungydrid (8 байт)
4.
Решение by [stl] (9 байт)
5.
Решение by Eugene (9 байт)
Условие задачи.
Поместить байт AL в стек,
обновив при этом sp.
Решения
задачи.
by Serj: размер
7 байт.
;task#9
;Автор:Serj
;Способ компиляции: nasmw task9.asm -o task9.com
;7 byte
org 0100h
dec sp ;sp=sp-1
mov bp,sp ;bp=sp
mov [bp],al ;[bp]<-al
ret
|
by
Ungydrid: размер 8 байт.
; Task#9 вариант с инициализацией
; Описание: типа push al
; Размер: 8 байт
; Рецепт: tasm, tlink /t /x
; Автор: UNGYDRID
.model tiny
.code
org 100h
start:
mov al, 25
dec sp ; заранее уменьшаем значение вершины стека
mov di, sp
stosb ; и записываем туда al
inc sp ; восстановить-то стек перед выходом все-таки желательно
ret
end start
|
by [stl]: размер
9 байт.
.386
IDEAL
MODEL tiny
CODESEG
ORG 100h
start:
mov al,12h ;8-bit value to push
dec sp
mov bx,sp
mov [bx],al
int 20h ;terminate program
END start
|
by Eugene: размер
9 байт.
;написал Eugene
;способ компиляции: fasm 9.asm 9.com
;размер 9 байт
org 100h
mov al, 12h
dec sp
mov di, sp
mov [di], al
int 20h
|