mardi 1 juillet 2014

What is asm ? [eng]

Machine code is like french or chinese, it's the only language understood by the CPU. The assembler is a bridge between this one and us the humans. Indeed, asm is understandable by man with the use of numbers and letters (called mnemonic, adressing mode, registers...) which once assembled is converted in machine code, that is to say a sequence of 0 and 1.

Other programming languages exist like basic, C or even fortran : those are coupled with a compiler which converts eg. C in machine code so that the CPU will understand the program you have written and then execute it.

Several assemblers exist, just as there is many languages on this earth. Each CPU understand his own machine code : eg. Amiga NG with PPC doesn't understand 68k... So you must use an interpreter (which is a program like any other) which will convert 68k code into PPC one... WinUAE which a lot of you know on PC, contains an interpreter converting this time 68k in x86...

We have a huge opportunity with our 68k, since his language is very simple compared to other assemblers. You will note that its learning is exactly as a spoken language : beginnings are somewhat confusing, you need to get used with novelty, and then step by step with lessons everything get simpler... until immediate comprehension when courses and lessons are over and well assimilate.

In fact, you will have to understand the CPU, that is to say "see" how it works : in a way be at his place...don't worry, it's quite possible, hundreds of thousands of people all computer mixed arrived, so you'll get there too !


Plus, today with internet, exchanges are very fast and simple : sending a e-mail with a question can bring a flash answer to a incomprehension and then you'll continue to evolve et learn without being stuck for days and months on something unclear...

That's not all : not only the 68000+ is simple, but also our operating system too. Indeed, the kickstart contain more than a thousand of functions well defined which allows to simply code any games, demos or utilities...

In short, all the conditions are right for you finally launch in assembly programming, which, you'll see, will be passionating, I am sure !

With these very pedagogical courses, you'll become a real boss in assembly programming because the good habits and the right methods will be learned since the beginning ! Plus, having myself years of daily programming (oh là là, what a passion my friends !) in this language, I am aware of what is essential to know, and then all the useless (and there's a lot) will be spared...

The 68000+ being imperfect, there's for example many functions which I've never used. All the unnecessary is abandoned here : this blog is mainly for beginners to learn good and strong bases. Personally, I started from scratch with this language, I owned some rudiments in basic and that's all. My learning has been very and so much long, but with my experience, I'll thrust you faster in the upper echelons of the 68k assembly programming.

Next, once your level in this domain well developed, you may explore by yourself all the hidden recess of the 68000+ : the main goal here is to help you make your first steps in the best available conditions so you can be on your own...

I suppose myself a good pedagog : however if some parts seem unclear, let your questions in the commentary and I will correct the article for more clarity...

Good read and good learning !

Cosmos
  
(translated by Squaley)
     

1 commentaire: