Warning: file_get_contents(/home/www/coppershade.org/articles/Assembler.txt) [function.file-get-contents]: failed to open stream: No such file or directory in /home/www/coppershade.org/index.php on line 33

Warning: Cannot modify header information - headers already sent by (output started at /home/www/coppershade.org/index.php:33) in /home/www/coppershade.org/index.php on line 105

Warning: Cannot modify header information - headers already sent by (output started at /home/www/coppershade.org/index.php:33) in /home/www/coppershade.org/index.php on line 106
Assembler | Coppershade

Assembler

In all other languages, you're either limited by convenience by the custom language definition that the author decided was beautiful and correct, or limited by inconvenience by whatever behavior of objects and libraries miscellaneous authors thought was great at the time. Why not be timeless?

Why code assembler?

Only with assembler you can attain WYCIWYG, ie. "What You Code Is What You Get". There's very little documentation to read, especially if you code directly for the hardware. This gives a tremendous amount of satisfaction.
With very little to memorize, you can actually claim to know your language fully. With no custom constructs to adhere to, you can claim to know how a computer works, and any abstractions are made by you alone. The bread-and-butter abstractions we use today were abstracted from hardware programming, and so there's always the possibility of discovering a new, basic abstraction.
If you also write all your code yourself, you rule out the possibility of another programmer causing you grief, making you even more happy!
No other language offers the satisfaction and happiness that Assembler does. Don't you want to be happy?

Reality Check!

That said, it's a lot of typing, less if you use macros and make your own libs. On a stressful day, you'd like to just call demoEffect(params) or have a lib at beck and call, but on that same day you might not want to read the lib docs again. Then you'd have your own lib that you made and know by heart.
It's also easy to make an infinite loop or code a bug that trashes the memory. There's no real safety net (except for the I think never used realtime debugger), so it can be daunting.
I like Assembler because I like to write lots of code and test things, I enjoy this code->test loop a little too much at times so that nothing gets finished! I think this is a common phenomenon, so I point it out in the hope you might avoid it.
If you want to learn Assembler, you may have already come across my video tutorials on Youtube. If you already know it pretty well, here's where more advanced articles will appear, and some useful tools are coming...!