An assembly language is a low-level programming language for a computer, microcontroller, or other programmable device, in which each statement corresponds to a single machine code instruction.
97
votes
18answers
22k views
How does learning assembly aid in programming?
I have been programming in higher level languages (Python, C#, VBA, VB.NET) for around 10 years and I have completely zero understanding on what's going on, "under the hood."
I am wondering what are ...
64
votes
7answers
27k views
Is this an assembly language?
In childhood I used to program on MK-61 soviet calculator.
It had 4 operating registers (X, Y, Z, T) and 15 storage registers. Program could have 105 steps.
As I recall it had commands like:
swap X ...
58
votes
13answers
5k views
How Do Computers Work? [closed]
This is almost embarrassing ask...I have a degree in Computer Science (and a second one in progress). I've worked as a full-time .NET Developer for nearly five years. I generally seem competent at ...
44
votes
6answers
3k views
How were the first compilers made?
I always wonder this, and perhaps I need a good history lesson on programming languages.
But....since most compilers nowadays are made in C......how were the very first compilers made (AKA before C) ...
41
votes
4answers
14k views
How can this all fit into 64kb?
So, I am here at assembly 2011 and there was this demo played: http://www.youtube.com/watch?v=69Xjc7eklxE&feature=player_embedded
It's one single file only, it says that in the rules. So I ...
33
votes
13answers
9k views
How have languages influenced CPU design?
We are often told that the hardware doesn't care what language a program is written in as it only sees the compiled binary code, however this is not the whole truth. For example, consider the humble ...
29
votes
11answers
929 views
Is it wise for a high level developer to spend time studying assembly?
It is clear that the knowledge of low level stuff is very important in our work.
But in a situation where you're already developing commercial software on a high level, and when you already have a ...
21
votes
12answers
3k views
Were the first assemblers written in machine code?
I am reading the book The Elements of Computing Systems: Building a Modern Computer from First Principles, which contains projects encompassing the build of a computer from boolean gates all the way ...
20
votes
13answers
2k views
Low level programming - what's in it for me?
For years I have considered digging into what I consider "low level" languages. For me this means C and assembly. However I had no time for this yet, nor has it EVER been neccessary.
Now because I ...
15
votes
8answers
1k views
Reverse engineering: what is it really good for? [closed]
I have some innocent/beginner questions:
What is reverse engineering good for?
As a programmer, should I learn the art of reverse engineering?
What are the benefits to a programmer who is ...
13
votes
4answers
1k views
Is Assembly still relevant?
Are there major differences between assembly language and higher level languages when it comes to coding and/or managing projects? Obviously it takes more statements in assembly language to carry out ...
12
votes
5answers
668 views
Advice for an ambitious student on building your own kernel
I'm a very ambitious university student who wishes to learn pretty much everything there is to know about computers (bash me if you want, I love learning). Recently I thought it would be a fun project ...
12
votes
6answers
1k views
What came first, the compiler, or the source?
I'm curious about the birth of the compiler. How did programming begin? Did people first build hardware that recognized a certain set of commands, or did people define a language and then build ...
12
votes
9answers
509 views
Rewriting IBM assembler + COBOL in C++
I work as a rental agent / manager for a car rental company that is running on a rental system that was written in 1972. I decided that maybe it was time for an update. For a bit of background, here ...
12
votes
7answers
3k views
What are some good open source c++ packages to study in order to learn advanced software construction?
I've heard that you should read 10 times more than you should write. This applies to both literature and source code. Therefore, I'd like to study the best c++ packages we've developed.
I'm ...
11
votes
18answers
4k views
Assembly as a First Programming Language?
How good of an idea do you think it would be to teach people Assembly (some variant) as a first programming language? It would take a lot more effort than learning for instance Java or Python, but one ...
11
votes
6answers
2k views
How do programmers deal with low level software development in high level languages?
I am somewhat new to programming and the best way I can ask this question is with an example.
I know how to do basic things in Java and C#. Things like a small windows forms application or make a ...
11
votes
2answers
417 views
Are some NOP codes treated differently than others?
I'm curious about this, let's say I have:
00000000001 90 nop
00000000002 90 nop
00000000003 90 ...
10
votes
4answers
961 views
Why does Donald Knuth write TAOCP using assembly language?
I don't hate using assembly language, since I have written some in my os course. But obviously, assembly language lacks abstraction, you have to pay more attention to the details.
Is assembly ...
10
votes
6answers
602 views
Should I try to do practice problems in assembly?
I was looking at Project Euler Problem 48:
The series, 11 + 22 + 33 + ... + 1010 = 10405071317.
Find the last ten digits of the series, 11 + 22 + 33 + ... + 10001000.
In Python I can do ...
9
votes
8answers
1k views
Should I include `assembly` as programming language in the CV?
In the answer for one question someone wrote that assembly is not a language, it's a process. I tend to agree, since the assembly "language" is dependent on the architecture it will run on, which may ...
9
votes
4answers
2k views
Is there a canonical book on x86 assembly?
There are lots of books on assembly. However, they usually deal with ISAs about which I don't care, such as MIPS or ARM. I don't deal with these architectures; there's no reason for me to try to learn ...
9
votes
6answers
1k views
Where can I learn more about Low Level Programming
So First of all, I did Graduate from a University with a B.S. in Computer Science, and while I feel I got a multitude of programming experience.....I really missed out on the SUPER low level stuff.
I ...
9
votes
4answers
598 views
I want to build a Virtual Machine, are there any good references?
I'm looking to build a Virtual Machine as a platform independent way to run some game code (essentially scripting).
The Virtual Machines that I'm aware of in games are rather old: Infocom's ...
9
votes
7answers
667 views
Learning to Program in Assembly - Useful Resources [closed]
Following on from a previous thread, it has got me interested in learning a little about Assembly programming. Not so much for wanting to program useful apps in, just to get a feel for low level ...
8
votes
2answers
435 views
Assembly Language being used in Aircraft System
Today my lecturer mentioned the reason why the aircraft system is programmed in assembly language is due to the program being written have less error . Is this statement true ? Because when he asked ...
8
votes
2answers
1k views
Is it true that “Real programmers can write assembly code in any language.”?
Real programmers can write assembly code in any language.
(Larry Wall).
As far as I can make out, Mr. Larry Wall is trying to say that to a real programmer any language can have the same ...
7
votes
6answers
1k views
How exactly do we go from Binary/Hex to Assembly Instruction sets?
So i've been trying to learn some Embedded/Assembly programming for a bit here lately, as well as going far as trying to learn the lowest level (gates and such).
One thing puzzles me though....is how ...
7
votes
3answers
736 views
Mac OS Ⅹ Assembly Language Esoteria
I've been playing around with assembly and object files in general on Mac OS Ⅹ and was wondering if somebody could provide some edification. Specifically, I'm wondering what the extra code GCC ...
6
votes
7answers
1k views
Assembly & The Programming Field
As it were, I do enjoy programming in assembly. I know that as a rule, assembly is platform specific so 'x' assembly will not help me if I had to work with 'y' machines. That said, how common are (at ...