Re: A86: Re: TAZM...(***VITAL***)
[Prev][Next][Index][Thread]
Re: A86: Re: TAZM...(***VITAL***)
At 11:23 PM 5/31/99 -0500, you wrote:
>Assembly Studio has an option to warn you of "illegal indirection" when you
>do something like this. Evaluating left-to-right shouldn't be a problem, as
>in a language like C that handles order of operations, it's still good
>programming practice to use parenthis to eliminate any possibly ambiguity.
>If you aren't using indirection, leave out the parenthesis.
>
>If you do want <ld bc,nnnn> then it should be written as follows:
>
> ld bc,12*(3+1)
>
>Suppose you did need the value, as with <ld bc,(nnnn)>:
>
>address = 12*(3+1) ; or even address = (12*(3+1))
> ld bc,(address)
>
>> Actually, I realized after this message that TASM can determine the
>> difference, but what if the author wanted to get the address of the
>> address? TASM has no clue, thus more lines of code are needed making the
>> source REALLY ugly:
>>
>> ld bc,(12*(3 + 1)) becomes:
>>
>[snip]
>> (I know that this can be optimized...I'm just making my point).
>
>I fail to see how writing a page of code that's pointless makes a point.
>The instruction exists, and as shown above, the compiler will generate it.
>So you can use it.
Actually, the instruction to take the value at an address, multiply the
result by a value and take the value of the resulting address does not exist.
>My current project has 12,500+ lines of code. I'd say that's a big
>conversion.
In the semi-edited words of Kouri, those who don't want to convert their
code can use TASM 3.x and new code can be written in TAZM.
Thomas J. Hruska -- shinelight@detroit.crosswinds.net
Shining Light Productions -- "Meeting the needs of fellow programmers"
http://www.shininglightpro.com/
References: