Visit Jeremy's Blog.
Go Back > Forums > Non-*NIX Forums > Programming
User Name
Programming This forum is for all programming questions.
The question does not have to be directly related to Linux and any language is fair game.


  Search this Thread
Old 04-04-2005, 08:37 PM   #1
Registered: Oct 2003
Location: Canada
Distribution: Slackware
Posts: 340

Rep: Reputation: 30
Question How to start programming assembly in Linux?

I want to start playing around with x86 programming on my spare Linux machine. I've programmed in a different assembly language for a semester (this one) and I'm one of the freaks that enjoys it

I wouldn't mind playing around with x86 programming, but I need to know where to start. I *think* from my knowledge that I can get away with using the following to get started:

Assembler (gnu as?)
Linker (gnu ld?)
Debugger/emulator? (gdb?)

Maybe things like a hex editor and a object file dumper (??) would be pretty handy too?

I want to get pretty serious, much farther than hello world programs. Is there some 'bible' textbook for x86 programming? I probably wont get too far without a good reference book and some online. My teacher says x86 is a huge language and by the sounds of it I cant just learn it from a 'how-to'.
Old 04-05-2005, 12:45 AM   #2
Registered: Feb 2005
Location: Christchurch, NZ
Distribution: Kubuntu Dapper 6.06
Posts: 43

Rep: Reputation: 15
I picked up a copy of 'Designing Embedded Harware' by John Catsoulis (pub. O'Reilly) today, and have had a browse through. I don't claim to have a clue when it comes to assembly, but it's something I'd like to learn myself. The book would be a must for anyone who wants to know the principles behind programming for specific instruction sets (Amtel AVR, Motorola 68000, PIC Micro, etc) and computer architecture, but Catsoulis says the Ported I/O structure of Intel-type processors and the huge instruction set make it difficult, and the book doesn't deal with them. CISC archs ie x86, Pentium may have over 1,000 opcodes.
Shure, you lose power by using C, but it's a hell of a lot easier, and it's portable mostly. Not many applications, save for device drivers, need the raw bit-shuffling power of assembly. With a good C compiler, you don't lose much efficiency.
What do you have in mind by learning assembly? My interest is chiefly because I'm an engineering student.
Certainly the tools you mentioned would be the right ones for the job. I'm curious to find out whether some sort of IDE for Linux is available to streamline the process?
Old 04-05-2005, 01:07 AM   #3
Registered: Feb 2005
Location: Christchurch, NZ
Distribution: Kubuntu Dapper 6.06
Posts: 43

Rep: Reputation: 15
Just found a great website for embedded Linux stuff:
Silicon Penguin
Check it out!
Old 04-05-2005, 01:10 AM   #4
LQ Veteran
Registered: Aug 2003
Location: Australia
Distribution: Lots ...
Posts: 17,261

Rep: Reputation: 2641Reputation: 2641Reputation: 2641Reputation: 2641Reputation: 2641Reputation: 2641Reputation: 2641Reputation: 2641Reputation: 2641Reputation: 2641Reputation: 2641
Did you try googling. ???.
here and here are a couple of sites I bookmarked ages ago when I got (semi-)keen.
Never progressed it, but they might start you off. Hitting lists would be the go as well I'd reckon.


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off

Similar Threads
Thread Thread Starter Forum Replies Last Post
assembly programming Ephracis Programming 5 05-08-2005 03:04 AM
How to start Assembly Programming ? indian Programming 17 04-19-2005 11:51 PM
x86 assembly programming in Linux XsuX Programming 9 12-01-2004 10:45 AM
Assembly Programming Page programmershous Programming 6 07-17-2004 05:17 PM
assembly programming in linux chriscoelphoto Linux - Newbie 2 05-02-2004 06:21 PM > Forums > Non-*NIX Forums > Programming

All times are GMT -5. The time now is 02:39 AM.

Main Menu
Write for LQ is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration