Categories
Uncategorized

Week 4 Blog

   Programming in every language is not a fairly difficult task, as long as you use the proper techniques and get creative with your solutions then anything can be accomplished. It does however have certain criteria, some services can be really picky and require very efficient code. In an ideal world, all code would be efficient, but that isn’t always the case. Some implementations are lousy or simply not efficient enough or well fast enough. Give all that all languages share many similarities. However lately I have been work very closely with assembly language for one of my courses. It is very interesting to see how it all really works, I’ve used it before but not a lot.

I now find myself spending a lot of time trying to understand it all. I’ve been aware for a long time now that it all comes down to gates that store 1s and 0s. It’s baffling to see how in high-level languages we can simply declare a variable and all the hard work is done by the assembler to turn it into something the computer processor can run. I have been struggling quite a lot with virtualization. In virtualization it takes physical memory and virtualizes, to avoid programs from having direct access to the physical memory. In my most recent assignments for this course, we have to work very closely in actually implementing these things. Luckily this is done in C. However even in C, this task is quiet difficult to understand and keep track of where you are in memory. 

The positive side of things, I am learning and learning is always a good process. In this industry you must always expect to keep learning. APIs change, languages change, it’s an industry that constantly changes. To think all that change goes down to assembly language and how complex it is is amazing. I hope I can keep learning and truly understand it. I am sure it will become very useful or at least give a deeper understanding of everything I do in programming. 

Print Friendly, PDF & Email

Leave a Reply

Your email address will not be published. Required fields are marked *