LinuxQuestions.org
Share your knowledge at the LQ Wiki.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Non-*NIX Forums > Programming
User Name
Password
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.

Notices


Reply
  Search this Thread
Old 11-06-2007, 11:45 AM   #16
makyo
Member
 
Registered: Aug 2006
Location: Saint Paul, MN, USA
Distribution: {Free,Open}BSD, CentOS, Debian, Fedora, Solaris, SuSE
Posts: 735

Rep: Reputation: 76

Hi.
Quote:
Originally Posted by theNbomr View Post
... With all due respect to YolLuTRaC, learning any assembler for which you do not have a target system is a bit pointless, and most people do not have access to a MIPS based system. Yes, assembler language is very low-level, but if you are interested in programming at the hardware level, it is relevant, as well as instructive ... --- rod.
And yet there is the germ of project there, blending more than one approach. Begin to learn C, then little-by-little, write a simple MIPS simulator, starting with the simple instructions, allow easy IO, etc. Once that is running, then write a simple MIPS assembler. I think you will learn a lot, getting at least as much out as you put in, but it will be a strenuous task. Sun SPARC boxes are also easily available on eBay, so you could purchase one for less than $200. I have run Debian Etch on a Sun Ultra II dual CPU, which then would support your experimentation with C and assembler.

I cut my teeth on Seymour Cray-designed machines ( http://en.wikipedia.org/wiki/Seymour_Cray ), very clean, elegant instruction sets, http://en.wikipedia.org/wiki/RISC -- unlike the Rococo sets of CISC boxes, http://en.wikipedia.org/wiki/Complex...n_Set_Computer

For commercial work like this on custom-designed computers, some of my colleagues write assemblers, debuggers, and other tools in perl ... cheers, makyo
 
Old 11-06-2007, 05:19 PM   #17
jiml8
Senior Member
 
Registered: Sep 2003
Posts: 3,171

Rep: Reputation: 116Reputation: 116
I agree about avoiding Windows-specific C. Learn ANSI C, then you can work on OS-specific extensions with the understanding that these ARE OS-specific.
 
Old 11-06-2007, 07:01 PM   #18
sundialsvcs
LQ Guru
 
Registered: Feb 2004
Location: SE Tennessee, USA
Distribution: Gentoo, LFS
Posts: 10,673
Blog Entries: 4

Rep: Reputation: 3945Reputation: 3945Reputation: 3945Reputation: 3945Reputation: 3945Reputation: 3945Reputation: 3945Reputation: 3945Reputation: 3945Reputation: 3945Reputation: 3945
There are, as you know, dozens of computer programming languages, and over the many-years I have mastered several dozen of them. Starting with my very first 8-line program which took me three months to write and had a bug in it.

The hardest thing to master about programming is ... programming itself. And you don't see that right away, because at first you are pummeled by punctuation. To a [stupid ol'] computer, it matters a great deal where all those commas and semicolons and squiggle-marks go, and at first you're going to be flummoxed by that, no matter what language you start with.

But eventually you learn to forgive that "stupid ol'" computer, which after all is nothing more than a machine, and you build-up to the point where you can write a program in your current "language de jour" with reasonable proficiency. It is at this point that it's a really good idea to start learning a new language.

You need to do this for a good while. I don't think it could be expected to take you less than a year. And you need to be patient with yourself because you are learning a new skill and you are, also, dealing with "a dumb machine." You need to write a lot of programs: it really does not matter much what those programs are. "Practice, man, practice!"

I would suggest that you start out with a programming language that is fairly high-level. Plenty of folks have cut their teeth on Microsoft Visual Basic. And, plenty of people make their living at it today. Forget the talk of "The Evil Empire." You're learning a craft, and you'll need to learn more than one system. Find whatever system seems to present you with the least number of obstacles at first.

However... do plan to learn more than one system! You need to be familiar with ... eventually(!):
  • Microsoft Windows
  • Linux
  • Macintosh OS/X (a.k.a. BSD Unix + Mach)
But "Rome wasn't built in a day."

Welcome! Welcome to a profession that has been thoroughly engaging to me for twenty-five years and counting. Certainly we should consider ourselves fortunate when the way that we earn our daily bread is still fascinating and rewarding.

Last edited by sundialsvcs; 11-06-2007 at 07:02 PM.
 
Old 11-07-2007, 12:06 AM   #19
checkmate3001
Member
 
Registered: Sep 2007
Location: Folsom, California
Distribution: Ubuntu, Mint, Debian, Suse
Posts: 307

Rep: Reputation: 32
Sissys!

What's wrong with a little Assembly Language?

God... I hated that stuff. Somehow got that as my very first college course. That was the longest semester of my life.
 
  


Reply



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
which programming language is used to do tcp/ip programming?? gajaykrishnan Linux - Networking 9 12-21-2012 05:16 AM
What programming language do you know? zikhermm Programming 11 09-15-2001 10:51 PM

LinuxQuestions.org > Forums > Non-*NIX Forums > Programming

All times are GMT -5. The time now is 06:48 PM.

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