; Program wypisuje zawartosc 32 bitow rejestru stanu procesora (tzw. flag) ; od bitu najstarszego do najmlodszego. ; ; Autor: Bogdan D. ; kontakt: bogdandr (at) op (dot) pl ; ; nasm -O999 -o flagi.com -f bin flagi.asm ; ; Copyright (C) 2005-2007 Bogdan 'bogdro' Drozdowski, bogdandr @ op . pl ; ; Ten program jest wolnym oprogramowaniem; mozesz go rozpowszechniac ; i/lub modyfikowac zgodnie z licencja GNU Lesser General Public License ; (GNU LGPL) w wersji wydanej przez Fundacje Wolnego Oprogramowania; ; wedlug wersji 3 Licencji lub (jesli wolisz) jednej z pozniejszych wersji. ; ; Ten program jest udostepniany z nadzieja, ze bedzie uzyteczny, lecz ; BEZ JAKIEJKOLWIEK GWARANCJI; nawet domyslnej gwarancji PRZYDATNOSCI ; HANDLOWEJ albo PRZYDATNOSCI DO OKRESLONYCH ZASTOSOWAN. W celu uzyskania ; blizszych informacji - Licencja GNU Lesser General Public License. ; ; Z pewnoscia wraz z niniejszym programem otrzymales tez egzemplarz ; Licencji GNU Lesser General Public License; jesli nie - napisz do ; Fundacji Wolnego Oprogramowania: ; Free Software Foundation ; 51 Franklin Street, Fifth Floor ; Boston, MA 02110-1301 ; USA org 100h main: ; mov dx, info ; mov ah, 9 ; int 21h pushfd ; flagi na stos ; mov dx, 4c30h mov ax, 0e30h ; AH=0eh, AL='0' pop esi ; flagi do ESI mov cx, 32 ; tyle bitow wyswietlimy petla: and al, 30h ; "zerujemy" AL do wartosci '0' shl esi, 1 ; wypychamy najstarszy bit ESI do flagi CF adc al, 0 ; wartosc flagi CF dodajemy do AL int 10h ; wyswietlamy AL ( '0' lub '1' ) loop petla ; od poczatku mov ah, 4ch ; wyjscie z programu int 21h ;info db 'Flagi: $'