Talk About Network

Google


Register and Login
Nick
Password
Register create new account Sign up is FREE and you can post replies, new topics, bookmark posts and more!
Recover lost password


Programming > Assembly x86 > Re: Any more gr...
Latest [ Topics | Posts ] Archive Post A New Topic Post a Reply
<< Topic < Post Post 3 of 39 Topic 4612 of 4710
Post > Topic >>

Re: Any more graceful way to saturate adds?

by Terje Mathisen <spamtrap@[EMAIL PROTECTED] > Apr 11, 2008 at 09:41 AM

Jim Leonard wrote:
> I am working in 16-bit 808x assembler (yes, on an old 808x CPU) and
> adding two 8-bit numbers to each other and saturating the result.
> Here is the best I could come up with:
> 
> ; AL and DL have unsigned 8-bit values to add
> ; DL is actually extended into DX (ie. 00xxh)
>    cbw            ; Make AL a signed word
>    add   dx,ax    ; Do word sized add, into DX
>    jns   @[EMAIL PROTECTED]
   ; jump if result not signed/negative
>    xor   dx,dx    ; Underflowed; make 0
> @[EMAIL PROTECTED]
>    or   dh,dh     ; Did it overflow?
>    jz   @[EMAIL PROTECTED]
      ; if not, we're ok
>    mov   dx,00FFh ; Overflowed; force our saturation value (FFh)
> @[EMAIL PROTECTED]
> 
> This is part of an ADPCM inner loop.
> 
> Is this about as fast as I can expect?  Or am I missing an obvious
> technique?  (I am not an 808x assembler expert)

What's wrong with the obvious approach?

  add dl,al	; Carry set if it overflows!
  sbb al,al	; AL = 0xff if overflow
  or dl,al	; Turns any overflow into 0xff

OK?

Terje
-- 
- <Terje.Mathisen@[EMAIL PROTECTED]
>
"almost all programming can be viewed as an exercise in caching"
 




 39 Posts in Topic:
Any more graceful way to saturate adds?
Jim Leonard <spamtrap  2008-04-10 14:59:55 
Re: Any more graceful way to saturate adds?
(Dick Wesseling) <spam  2008-04-11 02:32:55 
Re: Any more graceful way to saturate adds?
Terje Mathisen <spamt  2008-04-11 09:41:42 
Re: Any more graceful way to saturate adds?
Jim Leonard <spamtrap  2008-04-11 11:05:19 
Re: Any more graceful way to saturate adds?
Terence <spamtrap@[EM  2008-04-11 16:40:10 
Re: Any more graceful way to saturate adds?
Terence <spamtrap@[EM  2008-04-11 23:28:22 
Re: Any more graceful way to saturate adds?
"Wolfgang Kern"  2008-04-12 12:51:54 
Re: Any more graceful way to saturate adds?
Robert Redelmeier <red  2008-04-12 19:29:18 
Re: Any more graceful way to saturate adds?
Richard Russell <spam  2008-04-12 13:52:03 
Re: Any more graceful way to saturate adds?
Terje Mathisen <spamt  2008-04-13 15:31:59 
Re: Any more graceful way to saturate adds?
Terence <spamtrap@[EM  2008-04-12 17:03:07 
Re: Any more graceful way to saturate adds?
"Rod Pemberton"  2008-04-12 23:06:56 
Re: Any more graceful way to saturate adds?
"Rod Pemberton"  2008-04-12 23:10:57 
Re: Any more graceful way to saturate adds?
Terje Mathisen <spamt  2008-04-13 15:00:06 
Re: Any more graceful way to saturate adds?
"Rod Pemberton"  2008-04-13 11:27:29 
Re: Any more graceful way to saturate adds?
"Alexei A. Frounze&q  2008-04-13 17:19:25 
Re: Any more graceful way to saturate adds?
"Rod Pemberton"  2008-04-14 02:41:38 
Re: Any more graceful way to saturate adds?
Jim Leonard <spamtrap  2008-04-14 06:58:12 
Re: Any more graceful way to saturate adds?
"Alexei A. Frounze&q  2008-04-14 03:39:12 
Re: Any more graceful way to saturate adds?
pete <spamtrap@[EMAIL   2008-04-15 05:11:19 
Re: Any more graceful way to saturate adds?
Jim Leonard <spamtrap  2008-04-15 07:30:34 
Re: Any more graceful way to saturate adds?
pete <spamtrap@[EMAIL   2008-04-17 17:05:43 
Re: Any more graceful way to saturate adds?
Terje Mathisen <spamt  2008-04-17 13:14:08 
Re: Any more graceful way to saturate adds?
Danjel McGougan <spam  2008-04-18 02:31:30 
Re: Any more graceful way to saturate adds?
Terje Mathisen <spamt  2008-04-18 11:21:01 
Re: Any more graceful way to saturate adds?
dave <spamtrap@[EMAIL   2008-04-18 13:57:11 
Re: Any more graceful way to saturate adds?
Jim Leonard <spamtrap  2008-04-21 07:23:39 
Re: Any more graceful way to saturate adds?
Jim Leonard <spamtrap  2008-04-21 07:33:56 
Re: Any more graceful way to saturate adds?
Esra Sdrawkcab <spamt  2008-04-21 20:07:15 
Re: Any more graceful way to saturate adds?
Terje Mathisen <spamt  2008-04-22 11:01:06 
Re: Any more graceful way to saturate adds?
Esra Sdrawkcab <spamt  2008-04-23 08:20:41 
Re: Any more graceful way to saturate adds?
"H. Peter Anvin"  2008-06-02 09:43:53 
Re: Any more graceful way to saturate adds?
Terje Mathisen <spamt  2008-06-02 19:53:52 
Re: Any more graceful way to saturate adds?
aku ankka <spamtrap@[  2008-04-22 00:38:05 
Re: Any more graceful way to saturate adds?
Terje Mathisen <spamt  2008-04-22 11:03:00 
Re: Any more graceful way to saturate adds?
aku ankka <spamtrap@[  2008-04-22 23:43:47 
Re: Any more graceful way to saturate adds?
Jim Leonard <spamtrap  2008-05-01 13:13:06 
Re: Any more graceful way to saturate adds?
Terje Mathisen <spamt  2008-05-02 09:11:22 
Re: Any more graceful way to saturate adds?
pete <spamtrap@[EMAIL   2008-05-02 04:38:05 

Post A Reply:
  Go here to Signup

AddThis Feed Button


About - Advertising - Contact - Frequently Asked Questions - Privacy Policy - Terms of Use - Signup

Contact
tan12V112 Sun Jul 6 20:14:29 CDT 2008.