Article View: pl.comp.lang.asm
Article #1998Re: Ustawianie/czyszczenie flagi ZF
From: gupi man'a'go
Date: Sun, 30 Aug 2009 21:14
Date: Sun, 30 Aug 2009 21:14
47 lines
2020 bytes
2020 bytes
‟marcin” zaprogramował/a: > Czy jest jakiś sposób by jedną instrukcją ustawić/wyczyścić flagę zera? > Napisałem makro i chciałbym aby po jego opuszczeniu ustawiana bądz > czyszczona była flaga ZF. Dla przykładu: > -- > IsLowerCase MACRO Char > LOCAL _IS_NOT_LOWERCASE, _END > > mov al, Char > cmp al, 'a' > jb _IS_NOT_LOWERCASE > > cmp al, 'z' > ja _IS_NOT_LOWERCASE > > ;; Set ZF > jmp _END > > _IS_NOT_LOWERCASE: > ;; Clear ZF > > _END: > > ENDM > -- > i w kodzie: > -- > IsLowerCase(al) > jz _END > -- > i dzięki temu nie musiałbym robić kolejnego sprawdzania czy zwrócono > true/false. Używany kompilator to TASM 16-bit. a co powiesz na takie rozwiązanie: subb $'a',%al cmpb $'z'-'a',%al jbe yes po co ci flaga “zf”, jeśli są bezpośrednie instrukcje wykonujące się dla danego stanu flag? dzięku usunięciu niepotrzebnych instrukcji skoku możesz sobie wrzucić jakieś instrukcje pomiędzy tymi i nie będzie przestoju. -- / qo |) :@=N%_g=v=a=g_eD_e=c()=d=8! =%!gN@8'Re. w8in/ad \ _x/ , ;h-%-a'hA'H4,X0'Xo~xo~xO,R`-%EXp01ITed: *-7/+eh / | ng `-%__%--'__%--'__%--~__%--^%B`/$qV3r[o; &GooMee L_._o_O_*_^_"_'_`_ -> http://thereis.notlong.com <- `L"EnOF"
Technical Details
Message-ID:
<h7eq2m$2kv4$1@news.ett.com.ua>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!feed.news.interia.pl!news.nask.pl!news.nask.org.pl!newsfeed00.sul.t-online.de!t-online.de!newsfeed.freenet.de!news.ett.com.ua!not-for-mailReferences:
<h7efnt$sa8$1@inews.gazeta.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!feed.news.interia.pl!news.nask.pl!news.nask.org.pl!newsfeed00.sul.t-online.de!t-online.de!newsfeed.freenet.de!news.ett.com.ua!not-for-mail From: gupi man'a'go <2009czerwiec@inmail.sk> Newsgroups: pl.comp.lang.asm Subject: Re: Ustawianie/czyszczenie flagi ZF Date: Sun, 30 Aug 2009 21:14:11 +0000 (UTC) Organization: opRWTng Lines: 47 Message-ID: <h7eq2m$2kv4$1@news.ett.com.ua> References: <h7efnt$sa8$1@inews.gazeta.pl> NNTP-Posting-Host: gpftor2.privacyfoundation.de Mime-Version: 1.0 X-Complaints-To: usenet@news.ett.com.ua X-Notice: Filtered by postfilter v. 0.6.1 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit