Savremena IT u službi prisluškivanja ljudi
Objavio nejra.16 27. mart 2024.
Skripte, Informacione tehnologije
Objavio zasne 16. septembar 2015. Prijavi dokument
;Napisati program koji ucitava proizvoljan niz cifara i sve cifre na ekranu koji se pojavljuju u tom nizu boji u zutu boju.
;Pre startovanja programa ispisati proizvoljan tekst na ekran.
DSEG SEGMENT
Poruka : DB ‘Upisati niz cifara iz skupa {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}: $’
Brojevi DB 10 DUP (0) ;Definicija niza od 10 bajtova, u kome su svi bajtovi imaju vrednost nula
DSEG ENDS
SSEG SEGMENT STACK
DB 256 DUP (0) ;obavezni deo
SSEG ENDS
CSEG SEGMENT
ASSUME CS:CSEG, DS:DSEG, SS:SSEG ;obavezni deo
;*****************************************************
IspisStringa MACRO str
PUSH AX
PUSH DX
MOV AH, 9 ;Poziva se Podinterapt za ispis stringa
MOV DX, offset str ;U DX smestamo adresu prvog znaka stringa str (offset je funkcija koja vraca rastojanje od pocetka Data Segmenta do pocetka str promenljive iz data segmenta)
INT 21h ;Pozivamo Interapt (isisuje string)
POP DX ;POP skidanje sa steka
POP AX
ENDM
;*****************************************************
UnosKaraktera MACRO ;Unosi znakove dok korisnik ne pritisne ENTER
PUSH AX
PUSH BX
NoviZnak: ;Ucitava znake sa tastature dok se ne pritisne ENTER
MOV AH, 1 ;Podinterapt za unos znaka sa izlazom
INT 21H ;Interapt 21H, uneti znak se sada nalazi u AL
CMP AL, 13 ;Proveravamo da li je pritisnut ENTER (13) (poredjenje)
JE EndRD ;Ako jeste zavrsavamo rad makroa (skace na kraj makroa)
CMP AL, 48 ;Poredimo AL sa 48 (sto je nula u ASCII tabeli)
JL NoviZnak ;Ako je manje od 48 onda nije cifra pa ucitavamo sledeci znak
CMP AL, 57 ;Poredimo AL sa 57 (sto je devet u ASCII tabeli)
JG NoviZnak ;Ako je vece od 57 onda nije cifra pa ucitavamo sledeci znak
;Inace jeste cifra 48-57 (nula-devet)
MOV AH, 0 ; (stavljamo u gornji dio regista 0 da budemo sigurni da se u cijelom registru nalazi ucitani broj)
SUB AL, 48 ;Smanjimo AL za 48 da bi u AL bio bas uneti broj, a ne njegova reprezentacija iz ASCII tabele
MOV BX, AX ;Prebacimo broj iz AX u BX, zato sto pomocu BX moze da se pristupi promenljivoj u data segmentu
Objavio nejra.16 27. mart 2024.
Objavio dragan79 25. mart 2024.
Objavio mija.03 13. mart 2024.
Objavio DJOKO MEKLAUD 27. mart 2024.
Objavio nejra.16 27. mart 2024.
Objavio bojana.petr 27. mart 2024.
Komentari
You must be logged in to post a comment.