Skip to content

Instantly share code, notes, and snippets.

@amostyaev
Created April 25, 2023 15:17
Show Gist options
  • Save amostyaev/85468f0403f0faae51385bcb0e21b674 to your computer and use it in GitHub Desktop.
Save amostyaev/85468f0403f0faae51385bcb0e21b674 to your computer and use it in GitHub Desktop.
Семинар от 25 апреля
INCLUDE settings.inc
INCLUDE io2020.inc
.STACK 4096
.DATA
FStr DB 'The program starts working.',0
LStr DB 'The program has ended.',0
A DD 267
B DD 34
C DD 5
.CODE
; 11.10b
MINMAX PROC
PUSH EBP
MOV EBP, ESP
PUSH EBX
PUSH ECX
PUSH EDX
MOV EBX, [EBP+8]
MOV EDX, [EBP+12]
MOV ECX, [EDX]
CMP [EBX], ECX
JGE L
XCHG [EBX], ECX
MOV [EDX], ECX
L:
POP EDX
POP ECX
POP EBX
; MOV ESP, EBP
POP EBP
RET 8
MINMAX ENDP
start: OUTSTR offset FStr
NEWLINE
PUSH OFFSET C
PUSH OFFSET B
CALL MINMAX
PUSH OFFSET C
PUSH OFFSET A
CALL MINMAX
PUSH OFFSET B
PUSH OFFSET A
CALL MINMAX
OUTI A
OUTI B
OUTI C
; 10.4
; MOV EBP, ESP
; L:
; ININT EAX
; CMP EAX, 0
; JL FIN
; JE P
; PUSH EAX
; JMP L
; P: CMP ESP, EBP
; JAE FIN
; POP EAX
; OUTI EAX
; NEWLINE
; JMP P
; FIN: MOV ESP, EBP
OUTSTR offset LStr
NEWLINE
EXIT
END start
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment