Kris1978 wrote:
Creating something on my own. But I'm in a point that I 've realised assembly is like any other programming language. You have to solve problems and keep in mind every single detail and most importantly organize everything. So here I am, wondering: is my mind capable of thinking as a real programmer who has that aptitude or I'm just wasting my time? I have serious doubts that my brain can think like that but.....anyway I decided to give it a try before once and for all give up 6502 assembly.
As you said, assembly is just another programming language.
Each language has their quirks.
If you're interested in Computer Programming, and assembly language, while interesting, is slowing you down, they most certainly don't let it stop you. Just pick another language.
Start with a higher level language: BASIC, Python, etc.
Get some experience there, then move on to something like C.
Dabble there some more, write your own data structures.
Then you can come back to assembly language.
The beauty of modern high level languages is that you get things like data structures and algorithms for "free". Nobody write an array implementation in Python. Nobody writes a lookup table in Python, they just use one. Nobody write a sort in Python. So you get to write code the needs arrays, and lookup table, and sorts, "for free", without focusing on the details of those elements. Rather you get to focus on your application.
Move down to something like C, and, yea, there are implementations of these things available. The language directly supports fixed length arrays, for example. But lookup tables, maybe you'll need to find some code that you need to tweak to make work for you. Now is a good time to work on coding up some sorting algorithm. But at least you don't have to worry about what registers to use, etc.
Now, back to assembly, you get to dwell on all of the details, for good and bad. But the concepts are the same. You don't have to relearn what an array is, or why you would sort some data. You know why, you're just more intimately involved in the implementation.
Programming is about creating abstractions and tying them together. The various levels of languages offer more or less support to the creating and bundling of those abstractions.
So, anyway, don't let assembly language keep you from exploring computer programming. Go ahead and start at the top and work your way down. You won't "miss" anything, everything you learn in, say, Scheme (for example) is applicable to how you write assembly language.