[lnkForumImage]
TotalShareware - Download Free Software

Confronta i prezzi di migliaia di prodotti.
Asp Forum
 Home | Login | Register | Search 


 

Forums >

comp.lang.ruby

[OT] Confession: I never did ASM

Julian 'Julik' Tarkhanov

9/27/2007 5:22:00 AM

I would love to join the recently started confession fest.

I've got a similar problem as Jay, but in a totally different domain.
Having started as a script kiddo - what kind of book can introduce me
in the beautiful but-oh-so-scary world of things like bit shifts,
number representations, registers and that 0xF of them all, so that I
can (not too urgently) start in C with at least some level of self-
confidence and understanding?

Is there some kind of book like "Everything you should know about the
Von Neumann machine to get by unscathed without brain damage" or so?
Except Donald Knuth because I also have a day job to fulfill :-)



61 Answers

M. Edward (Ed) Borasky

9/27/2007 6:22:00 AM

0

julik wrote:
> I would love to join the recently started confession fest.
>
> I've got a similar problem as Jay, but in a totally different domain.
> Having started as a script kiddo - what kind of book can introduce me in
> the beautiful but-oh-so-scary world of things like bit shifts, number
> representations, registers and that 0xF of them all, so that I can (not
> too urgently) start in C with at least some level of self-confidence and
> understanding?
>
> Is there some kind of book like "Everything you should know about the
> Von Neumann machine to get by unscathed without brain damage" or so?
> Except Donald Knuth because I also have a day job to fulfill :-)
>
>
>
>
Straight from the horse's mouth:

http://www.cs.unc.edu/~adyilie/comp265/vonNe...

:) :) :)

And no, I never met Von Neumann but I *did* write software for an
original Von Neumann machine -- ILLIAC I :).

John Joyce

9/27/2007 2:41:00 PM

0


On Sep 27, 2007, at 1:21 AM, M. Edward (Ed) Borasky wrote:

> julik wrote:
>> I would love to join the recently started confession fest.
>>
>> I've got a similar problem as Jay, but in a totally different domain.
>> Having started as a script kiddo - what kind of book can introduce
>> me in
>> the beautiful but-oh-so-scary world of things like bit shifts, number
>> representations, registers and that 0xF of them all, so that I can
>> (not
>> too urgently) start in C with at least some level of self-
>> confidence and
>> understanding?
>>
>> Is there some kind of book like "Everything you should know about the
>> Von Neumann machine to get by unscathed without brain damage" or so?
>> Except Donald Knuth because I also have a day job to fulfill :-)
>>
>>
>>
>>
> Straight from the horse's mouth:
>
> http://www.cs.unc.edu/~adyilie/comp265/vonNe...
>
> :) :) :)
>
> And no, I never met Von Neumann but I *did* write software for an
> original Von Neumann machine -- ILLIAC I :).
>
WOW, that's some classically fluffed up academic writing...

Jay Levitt

9/27/2007 5:34:00 PM

0

On Thu, 27 Sep 2007 14:21:49 +0900, julik wrote:

> I've got a similar problem as Jay, but in a totally different domain.
> Having started as a script kiddo - what kind of book can introduce me
> in the beautiful but-oh-so-scary world of things like bit shifts,
> number representations, registers and that 0xF of them all, so that I

Wow, that's a tough one today. When I did assembler (or machine language,
as many pointed out it should more properly be called), it was the next
natural step for a beginner too advanced for BASIC, and there were many,
many "ML for Beginners" books - in fact, I think I recall one titled just
that from Compute! Books.

These days, I'm not sure that there are many beginner assembler resources,
since it's more a tool of game designers, firmware developers, etc. Also,
assembler is much, much more complicated these days, with multi-core,
hyperthreading, pipelines, caches, microcodes, out-of-order execution,
branch prediction, and what-not. The 6502 had only 56 instructions (plus
some undocumented combination ones), and order and execution time were
guaranteed. I imagine there's some college coursework material somewhere.

If you want to be totally anachronistic, you could download a Commodore 64
emulator, and find copies of the old Compute! books; I think at least one
of them is now a free PDF. Look for Jim Butterfield, Richard Mansfield,
Tom Halfhill.

Just remember: $FFD2 is CHROUT, $FFE4 is GETIN, and $C000 is a great place
to put code.

--
Jay Levitt |
Boston, MA | My character doesn't like it when they
Faster: jay at jay dot fm | cry or shout or hit.
http://... | - Kristoffer

Gregory Seidman

9/27/2007 5:53:00 PM

0

On Thu, Sep 27, 2007 at 02:21:49PM +0900, julik wrote:
> I would love to join the recently started confession fest.
>
> I've got a similar problem as Jay, but in a totally different domain.
> Having started as a script kiddo - what kind of book can introduce me in
> the beautiful but-oh-so-scary world of things like bit shifts, number
> representations, registers and that 0xF of them all, so that I can (not too
> urgently) start in C with at least some level of self-confidence and
> understanding?
>
> Is there some kind of book like "Everything you should know about the Von
> Neumann machine to get by unscathed without brain damage" or so? Except
> Donald Knuth because I also have a day job to fulfill :-)

There are two aspects to ASM. One is how to write efficient ASM code, which
is mainly covered by the code generation and optimization sections of good
compiler books (read the Dragon book). The other is just understanding the
low-level language of the processor, and for this I recommend finding a
copy of spim (MIPS simulator) and a quick reference guide to the
instructions (MIPS is very much a RISC chip, emphasis on Reduced, so there
is a very manageable set of instructions to remember).

If that's a bit too steep to climb on your own (I had it fed to me in
college, after all, so I wouldn't blame you), look for course web pages at
various respected universities that involve teaching MIPS assembly. They
should have some good guidance.

--Greg


M. Edward (Ed) Borasky

9/28/2007 3:16:00 AM

0

Jay Levitt wrote:
> These days, I'm not sure that there are many beginner assembler resources,
> since it's more a tool of game designers, firmware developers, etc. Also,
> assembler is much, much more complicated these days, with multi-core,
> hyperthreading, pipelines, caches, microcodes, out-of-order execution,
> branch prediction, and what-not. The 6502 had only 56 instructions (plus
> some undocumented combination ones), and order and execution time were
> guaranteed. I imagine there's some college coursework material somewhere.

Beginner: _Guide to Assembly Language Programming in Linux_, Sivarama P.
Dandamudi

Advanced: (*way* advanced) http://www.agner.or...

I don't know of anything in between, but I'm sure there is something. :)

M. Edward (Ed) Borasky

9/28/2007 4:01:00 AM

0

John Joyce wrote:
>
> On Sep 27, 2007, at 1:21 AM, M. Edward (Ed) Borasky wrote:
>
>> julik wrote:
>>> I would love to join the recently started confession fest.
>>>
>>> I've got a similar problem as Jay, but in a totally different domain.
>>> Having started as a script kiddo - what kind of book can introduce me in
>>> the beautiful but-oh-so-scary world of things like bit shifts, number
>>> representations, registers and that 0xF of them all, so that I can (not
>>> too urgently) start in C with at least some level of self-confidence and
>>> understanding?
>>>
>>> Is there some kind of book like "Everything you should know about the
>>> Von Neumann machine to get by unscathed without brain damage" or so?
>>> Except Donald Knuth because I also have a day job to fulfill :-)
>>>
>>>
>>>
>>>
>> Straight from the horse's mouth:
>>
>> http://www.cs.unc.edu/~adyilie/comp265/vonNe...
>>
>> :) :) :)
>>
>> And no, I never met Von Neumann but I *did* write software for an
>> original Von Neumann machine -- ILLIAC I :).
>>
> WOW, that's some classically fluffed up academic writing...
>
>

You *did* see the date, right? Von Neumann died in 1957. That paper, as
well known as it is, was pretty tough to track down in HTML. Remember,
he was a theoretical and applied mathematician for decades before he
turned to "computer engineering". If you think it's "classically fluffed
up academic writing," you ought to see some of his papers on Hilbert
spaces. :)

There was actually a second paper on programming the machine, which is
even harder to find. I have a printed copy somewhere, but I haven't
found it on line yet.

John Joyce

9/28/2007 5:22:00 AM

0


On Sep 27, 2007, at 11:01 PM, M. Edward (Ed) Borasky wrote:

> John Joyce wrote:
>> On Sep 27, 2007, at 1:21 AM, M. Edward (Ed) Borasky wrote:
>>> julik wrote:
>>>> I would love to join the recently started confession fest.
>>>>
>>>> I've got a similar problem as Jay, but in a totally different
>>>> domain.
>>>> Having started as a script kiddo - what kind of book can
>>>> introduce me in
>>>> the beautiful but-oh-so-scary world of things like bit shifts,
>>>> number
>>>> representations, registers and that 0xF of them all, so that I
>>>> can (not
>>>> too urgently) start in C with at least some level of self-
>>>> confidence and
>>>> understanding?
>>>>
>>>> Is there some kind of book like "Everything you should know
>>>> about the
>>>> Von Neumann machine to get by unscathed without brain damage" or
>>>> so?
>>>> Except Donald Knuth because I also have a day job to fulfill :-)
>>>>
>>>>
>>>>
>>>>
>>> Straight from the horse's mouth:
>>>
>>> http://www.cs.unc.edu/~adyilie/comp265/vonNe...
>>>
>>> :) :) :)
>>>
>>> And no, I never met Von Neumann but I *did* write software for an
>>> original Von Neumann machine -- ILLIAC I :).
>>>
>> WOW, that's some classically fluffed up academic writing...
>
> You *did* see the date, right? Von Neumann died in 1957. That
> paper, as well known as it is, was pretty tough to track down in
> HTML. Remember, he was a theoretical and applied mathematician for
> decades before he turned to "computer engineering". If you think
> it's "classically fluffed up academic writing," you ought to see
> some of his papers on Hilbert spaces. :)
>
> There was actually a second paper on programming the machine, which
> is even harder to find. I have a printed copy somewhere, but I
> haven't found it on line yet.
>
Sorry Ed, think we crossed wires. I was talking about the Priess
piece somebody posted a link to earlier. The guy "translated" his
"web book" (think 1993 web sites) to 8 or 9 programming languages,
but it all seems rooted in C++ so it just doesn't make sense with
Ruby (let alone most of the others)

M. Edward (Ed) Borasky

9/28/2007 6:50:00 AM

0

John Joyce wrote:
>
> On Sep 27, 2007, at 11:01 PM, M. Edward (Ed) Borasky wrote:
>
>> John Joyce wrote:
>>> On Sep 27, 2007, at 1:21 AM, M. Edward (Ed) Borasky wrote:
>>>> julik wrote:
>>>>> I would love to join the recently started confession fest.
>>>>>
>>>>> I've got a similar problem as Jay, but in a totally different domain.
>>>>> Having started as a script kiddo - what kind of book can introduce
>>>>> me in
>>>>> the beautiful but-oh-so-scary world of things like bit shifts, number
>>>>> representations, registers and that 0xF of them all, so that I can
>>>>> (not
>>>>> too urgently) start in C with at least some level of
>>>>> self-confidence and
>>>>> understanding?
>>>>>
>>>>> Is there some kind of book like "Everything you should know about the
>>>>> Von Neumann machine to get by unscathed without brain damage" or so?
>>>>> Except Donald Knuth because I also have a day job to fulfill :-)
>>>>>
>>>>>
>>>>>
>>>>>
>>>> Straight from the horse's mouth:
>>>>
>>>> http://www.cs.unc.edu/~adyilie/comp265/vonNe...
>>>>
>>>> :) :) :)
>>>>
>>>> And no, I never met Von Neumann but I *did* write software for an
>>>> original Von Neumann machine -- ILLIAC I :).
>>>>
>>> WOW, that's some classically fluffed up academic writing...
>>
>> You *did* see the date, right? Von Neumann died in 1957. That paper,
>> as well known as it is, was pretty tough to track down in HTML.
>> Remember, he was a theoretical and applied mathematician for decades
>> before he turned to "computer engineering". If you think it's
>> "classically fluffed up academic writing," you ought to see some of
>> his papers on Hilbert spaces. :)
>>
>> There was actually a second paper on programming the machine, which is
>> even harder to find. I have a printed copy somewhere, but I haven't
>> found it on line yet.
>>
> Sorry Ed, think we crossed wires. I was talking about the Priess piece
> somebody posted a link to earlier. The guy "translated" his "web book"
> (think 1993 web sites) to 8 or 9 programming languages, but it all seems
> rooted in C++ so it just doesn't make sense with Ruby (let alone most of
> the others)
>
>
Ah ... yes ... the Priess book is junk, even the clean and "published"
versions. The Ruby version is a tad worse than the originals.

David B. Williams

9/29/2007 3:25:00 AM

0

Michael Bevilacqua-Linn wrote:
> Programming From The Ground Up - An Introduction to Programming using
> Linux
> Assembly Language is quite good.


Although my link to the free Priess book didn't seem to go over well,
here is a link to a free version of this book:

http://www.computer-books.us/assem...

David B. Williams
http://www.cybersp...

--
Posted via http://www.ruby-....

Julian 'Julik' Tarkhanov

9/29/2007 1:14:00 PM

0


On 29-sep-2007, at 5:25, David B. Williams wrote:

>
> Although my link to the free Priess book didn't seem to go over well,
> here is a link to a free version of this book:
>
> http://www.computer-books.us/assem...

Lovely! Just what I needed. Thanks alot.

--
Julian 'Julik' Tarkhanov
please send all personal mail to
me at julik.nl