From: "Campbell, Rolf [SKY:1U32:EXCH]" Newsgroups: comp.os.msdos.djgpp Subject: Re: Faster-than-shift travel Date: Thu, 24 Jun 1999 14:30:36 -0400 Organization: Nortel Networks Lines: 24 Message-ID: <3772794B.3D3F0738@americasm01.nt.com> References: <37726F12 DOT 9D1D3EB4 AT ameritech DOT net> NNTP-Posting-Host: bmerhc00.ca.nortel.com Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Mailer: Mozilla 4.6 [en] (X11; I; HP-UX B.10.20 9000/712) X-Accept-Language: en To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Reply-To: djgpp AT delorie DOT com S Prasad wrote: > Hello. Just have a newbie-at-asm question :-) > int i = 256; > I'd like to copy the high byte into the low byte, and save the low byte > as the var 'i'. Sorta like this: > > asm(" movb %%ah, %%al > : "=al" (i) > : "a" (i) > : "%eax"); > > Can I, using the output registers, just save AL to the variable i, so > that I just get the low byte? I'm not sure of the syntax, but that can be done. But, unless you are optimizing for 486 (or 386), there is no point, a shift takes 1 cycle on Classic Pentium/K6 (and above). -- -Rolf Campbell (39)3-6318