[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]
Re: [xml-dev] XML design of ((a and b) or c)
- From: "Ken North" <kennorth@sbcglobal.net>
- To: <xml-dev@lists.xml.org>
- Date: Thu, 14 Dec 2006 21:05:19 -0800
Leigh Klotz wrote:
> the question here is whether the evaluation of AND
> and OR stopped once the value became determined,
> or whether they evaluated all arguments. If evaluation
> stops, then AND and OR can be used as
> control constructs.
Whether the language was COBOL, FORTRAN, Algol, C or other compiled languages,
it eventually ended up as executable instructions. The heart of the matter is
the order of execution.
If our pseudo-code is IF ((a AND b) OR c) ...
then you'd see instructions something like this:
L R7, a ; load a into register 7
L R8, b
AND R7, R8
BNZ 20$ ; if true
TST c ; test the c bits
BNZ 20$
10$:
...
...
20$: ...
2. Now assume you used an optimizing compiler and the pseudo-code was:
IF ((a AND b AND c AND d) OR e)
It would put the e test first:
TST e ; test the e bits
BNZ 20$ ; if true
L R7, a ; load a into register 7
L R8, b
... and so on
3. Now assume the pseudo-code is IF ((a AND b) XOR c) ...
Because it's an exclusive OR, you need to test both sides because it's true when
only one side is true.
======== Ken North ===========
www.WebServicesSummit.com
www.SQLSummit.com
www.GridSummit.com
[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]