I have started to learn Assembler out of an old book.
On Tuesday, March 21, 2023 at 2:40:22rC>PM UTC-7, Alan Beck wrote:
I have started to learn Assembler out of an old book.
Compilers today don't write out the generated code in the same way,
and there aren't so many libraries around to read.
And, personally,
8086 is my least favorite to write assembly code in.
Learning C, and thinking about pointers and addresses, is a good start
toward assembly programming.
C programming works so well, that there are only a few
things you can't do in C, and so need assembly programs.
Not so long after I started learning OS/360 Fortran and PL/I, I found...
the compiler option for printing out the generated code in sort-of
assembly language. (Not actually assembleable, though.)
Compilers today don't write out the generated code in the same way,
//Hello all,//
Hi,
I have started to learn Assembler out of an old book.
It is ancient (2003) but I don't think 8086 programming has changed
much. But the tools have.
I took assembly language in school but dropped out. Now I want another
go at it.
Would someone be my Mentor and answer a ton of questions that would
dwindle out as time went on?
If it's OK, we could do it here. Or netmail
Books are from a bookstore.
... I don't think 8086 programming has changed
much. But the tools have. ...
Would someone be my Mentor and answer a ton of questions that would
dwindle out as time went on?
[Please reply directly unless the response is related to compilers. -John]--- Synchronet 3.21b-Linux NewsLink 1.2
gah4 <ga...@u.washington.edu> schrieb:
Compilers today don't write out the generated code in the same way,
Quite the opposite.
The standard on UNIXy systems is to write out assemblly language to
a file, which is then further processed with the actual assembler.
On the Internet, there is a project for almost everything - in this
case Tiny C, which still seems to be under active development. Or
at least there are sill commits at https://repo.or.cz/w/tinycc.git .
However, there is a reason why compilers got so big - there is
always a balance to be struck between comilation speed, compiler
size and optimization.
An extreme example: According to "Abstracting Away the Machine", the
very first FORTRAN compiler was so slow that the size of programs
it could compile was limited by the MTBF of the IBM 704 of around
eight hours.
The balance has shifted over time, because of increasing computing
power and available memory that can be applied to compilation,
and because relatively more people use programs than use compilers
than ever before. So, in today's environment, there is little
incentive for writing small compilers.
Also, languages have become bigger, more expressive, more powerful,
more bloated (take your pick), which also increases the size
of compilers.
Fortran G was not written by IBM, but contracted out. And is not
(mostly) in assembler, but in something called POP. That is, it
is interpreted by the POP interpreter, with POPcode written using
assembler macros. Doing that, for one, allows reusing the code
for other machines, though you still need to rewrite the code
generator. But also, at least likely, it decreases the size of
the compiler. POP instructions are optimized for things that
compiler need to do.
After a look at "open software" I was astonished by the number of
languages and steps involved in writing portable C code. Also updates of >popular programs (Firefox...) are delayed by months on some platforms,
IMO due to missing manpower on the target systems for checks and the >adaptation of "configure". Now I understand why many people prefer >interpreted languages (Java, JavaScript, Python, .NET...) for a >simplification of their software products and spreading.
What's the actual ranking of programming languages? A JetBrains study
does not list any compiled language in their first 7 ranks in 2022. C++ >follows on rank 8.
What does that trend mean to a compiler group? Interpreted languages
still need a front-end (parser) and back-end (interpreter), but don't
these tasks differ between languages compiled to hardware or interpretation?
DoDiGeorge
| Sysop: | Amessyroom |
|---|---|
| Location: | Fayetteville, NC |
| Users: | 59 |
| Nodes: | 6 (0 / 6) |
| Uptime: | 18:02:40 |
| Calls: | 810 |
| Calls today: | 1 |
| Files: | 1,287 |
| D/L today: |
10 files (21,017K bytes) |
| Messages: | 193,396 |