| Deutsch English Français Italiano |
|
<vqq7f0$22eta$2@dont-email.me> View for Bookmarking (what is this?) Look up another Usenet article |
Path: ...!weretis.net!feeder9.news.weretis.net!news.quux.org!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!eternal-september.org!.POSTED!not-for-mail
From: Stephen Fuld <sfuld@alumni.cmu.edu.invalid>
Newsgroups: comp.arch
Subject: Re: Why VAX Was the Ultimate CISC and Not RISC
Date: Tue, 11 Mar 2025 13:46:24 -0700
Organization: A noiseless patient Spider
Lines: 57
Message-ID: <vqq7f0$22eta$2@dont-email.me>
References: <vpufbv$4qc5$1@dont-email.me>
<2025Mar2.234011@mips.complang.tuwien.ac.at> <5pkg9l-kipt.ln1@msc27.me.uk>
<2025Mar3.174417@mips.complang.tuwien.ac.at> <vq4qav$1dksd$1@dont-email.me>
<vq5dm2$1h3mg$5@dont-email.me> <2025Mar4.110420@mips.complang.tuwien.ac.at>
<vq829a$232tl$6@dont-email.me> <2025Mar5.083636@mips.complang.tuwien.ac.at>
<vqdljd$29f8f$2@paganini.bofh.team> <vqdrh9$3cdrc$1@dont-email.me>
<vqek6h$3fro6$1@dont-email.me>
<fe70b48cd6fef0aaf89278163d8b6322@www.novabbs.org>
<vqfmr4$3npgk$1@dont-email.me> <vqg04o$3p80h$1@dont-email.me>
<vqgbao$3rbkh$1@dont-email.me>
<9371fe9be75cdd606c876f539e1d2d78@www.novabbs.org>
<vqnps4$1j63b$1@dont-email.me>
<0da86de26bac1912b190793512255aa4@www.novabbs.org>
<vqo8b1$1ln7o$1@dont-email.me>
<5e696219dedf30d0095dfd7671a4c87f@www.novabbs.org>
<vqpuja$22eta$1@dont-email.me>
<1ad795d74196830d2232d4f0b50ac2e4@www.novabbs.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Date: Tue, 11 Mar 2025 21:46:32 +0100 (CET)
Injection-Info: dont-email.me; posting-host="617d9ae2268289fad26cfbdea81af88e";
logging-data="2177962"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/UsZXQZK1wmEylxO5pdESBvyN2lSoz2qo="
User-Agent: Mozilla Thunderbird
Cancel-Lock: sha1:ZyBd7D6NYjmVgZR/HlBPPpt3aTs=
In-Reply-To: <1ad795d74196830d2232d4f0b50ac2e4@www.novabbs.org>
Content-Language: en-US
Bytes: 4386
On 3/11/2025 11:56 AM, MitchAlsup1 wrote:
> On Tue, 11 Mar 2025 18:15:06 +0000, Stephen Fuld wrote:
>
>> On 3/11/2025 10:44 AM, MitchAlsup1 wrote:
>>>>> When you do change names, can you spell LD and ST instead of MOV ??
>>>>
>>>> Yes, please LD / ST it is so much clearer what is going on. Less
>>>> trouble
>>>> getting confused by the placement of operands.
>>>>
>>>> I always put the memory operand second, which breaks the pattern of
>>>> having the destination operand first. Otherwise the destination is
>>>> first.
>>>>
>>>> I go cross-eyed reading code that is a whole lot of moves.
>>>
>>> I agree.
>>
>> I wonder if the different preferences is at least partially due to
>> whether the person has a hardware or a software background?
>
> Even when both LD and ST are written MOV there is a different OpCode
> for the inbound MOV versus the outbound MOV, so, in effect, they are
> really different instructions requiring different pipeline semantics.
>
> Only (O N L Y) when one has a memory to memory move instruction can
> the LDs and STs be MOVs. VAX had this, BJX* does not.
>
> One should argue that different pipeline semantics requires a different
> OpCode--and you already have said OpCode having different bit patterns
> and different signedness semantics different translation access rights
> , ... At the HW level about the only thing LD has in common with ST is
> the way the address is generated--although MIPS did something different.
You are making my point. No software guy talks about "pipeline
semantics" :-) Note that I am not saying you are wrong, just noting the
difference.
>
>> The idea is
>> that when hardware guys see the instruction, they think in terms of
>> register ports (read versus write), what is required of the memory
>> system (somewhat different for loads versus stores), etc. However
>> software guys think of a language construct, e.g. X = Y, which is
>
> MARY and MARY2 used X = Y to mean the value in X is deposited into Y.
> Both were left to right only languages. This should surprise most !!
> {{Although to be fair, Mary used the =: operator to perform assign.}}
And see my point about COBOL in the post above.
--
- Stephen Fuld
(e-mail address disguised to prevent spam)