From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Thread: bda4de328f,e67cdb1dcad3c668 X-Google-Attributes: gidbda4de328f,public,usenet X-Google-NewGroupId: yes X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news1.google.com!news2.google.com!news.glorb.com!newsfeed2.telusplanet.net!newsfeed.telus.net!edtnps83.POSTED!7564ea0f!not-for-mail From: "James J. Weinkam" User-Agent: Mozilla/5.0 (OS/2; U; Warp 4.5; en-US; rv:1.8.1.23) Gecko/20090906 SeaMonkey/1.1.18 MIME-Version: 1.0 Newsgroups: comp.lang.ada,comp.lang.fortran,comp.lang.pl1 Subject: Re: Why is Ada considered "too specialized" for scientific use References: <4bba8bf1$0$56418$c30e37c6@exi-reader.telstra.net> <4bbb2246$8$fuzhry+tra$mr2ice@news.patriot.net> <4bbb5386$0$56422$c30e37c6@exi-reader.telstra.net> <4bbdf5c6$1$fuzhry+tra$mr2ice@news.patriot.net> <4c0a2e36$0$34205$c30e37c6@exi-reader.telstra.net> <4c0b234f$1$fuzhry+tra$mr2ice@news.patriot.net> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Message-ID: <7plPn.6395$z%6.5719@edtnps83> Date: Tue, 08 Jun 2010 06:27:15 GMT NNTP-Posting-Host: 99.199.39.207 X-Trace: edtnps83 1275978435 99.199.39.207 (Tue, 08 Jun 2010 00:27:15 MDT) NNTP-Posting-Date: Tue, 08 Jun 2010 00:27:15 MDT Xref: g2news1.google.com comp.lang.ada:11456 comp.lang.fortran:24181 comp.lang.pl1:1420 Date: 2010-06-08T06:27:15+00:00 List-Id: J. Clarke wrote: > > The main distinction for me was that dumps don't come out in assembler. > But I never thought of machine code and assembler being distinct as a > result--just two ways to write the same thing. Your point is well taken for machines of the 60's and 70's, at least for the IBM ones with which I am most familiar. For example in 360 assembler, if you wanted to add two numbers you had your choice of A, AR, AH, AP, AL, ALR, AE, AER, AD, ADR, AXR, AU, AUR, AW, AWR and maybe a few more that I have forgotten. There was a one-to-one correspondence between each of these mnemonics and their corresponding numerical op codes.The assembly language programmer had to choose the correct mnemonic instruction to suit the circumstances. Moreover, while the assembler may have issued a warning in some cases, there was nothing to stop the programmer from using, for example, a half word op code to operate on a variable that had been defined as a full word point value or vice versa. I think the reason that many people want to make a distinction nowadays is that with processors such as the Intel 80xxx family, exactly what part of the instruction constitutes the op code is a little harder to pin down, and with an instruction such as add x,y the mnemonic op code add can generate any one of several dozen bit patterns spread varying parts of the first two bytes depending on how x and y are defined. There is definitely no one-to-one correspondence between mnemonic op codes and the bit pattern in any specific part of the machine instruction. Nevertheless, it remains true that the assembly language programmer who knows what he is about has complete control over the binary code generated, although I would venture to say that few, if any, assembly language programmers think of what they are doing in those terms most of the time.