Questions concerning low-level aspects of a system: programming close to the underlying details and hardware.

learn more… | top users | synonyms

37
votes
9answers
3k views

Why not have a High Level Language based OS? Are Low Level Languages more efficient?

Without being presumptuous, I would like you to consider the possibility of this. Most OS today are based on pretty low level languages (mainly C/C++) Even the new ones such as Android uses JNI & ...
36
votes
11answers
3k views

Why are cryptic short identifiers still so common in low-level programming?

There used to be very good reasons for keeping instruction / register names short. Those reasons no longer apply, but short cryptic names are still very common in low-level programming. Why is this? ...
29
votes
13answers
2k views

How good does a well-rounded programmer need to be with bit-wise operations? [closed]

I have been browsing some OpenJDK code recently and have found some intriguing pieces of code there that has to do with bit-wise operations. I even asked a question about it on StackOverflow. ...
29
votes
11answers
1k views

Is it wise for a high level developer to spend time studying assembly? [closed]

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 ...
22
votes
13answers
3k 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 ...
22
votes
12answers
5k 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 ...
16
votes
10answers
2k views

As a programmer, should I know low and high-level programming languages? [closed]

I been contacted to do some work remote controlling LEDs displays over TCP/IP, but my experience and preparation is mostly about high-level programming language. I said that to the person who contact ...
15
votes
8answers
2k 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
6answers
3k 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 ...
12
votes
8answers
1k views

How to deal with low level guys?

Recently I have started working for company which is developing mainly low level stuff (like device drivers, system level apps etc.). I was hired as high level programmer to develop a machine learning ...
12
votes
8answers
906 views

What are the complexities of memory-unmanaged programming?

Or in other words, what specific problems did automated garbage collection solve? I've never done low-level programming, so I don't know how complicated can freeing resources get. Update - apologies ...
12
votes
5answers
2k views

Which languages are used today for low-level programming? [closed]

When I hear low-level programming, such as for drivers, embedded systems, operating systems, etc., I immediately think about C and perhaps C++. But mainly C. But what other languages are also used ...
12
votes
4answers
924 views

What are the algorithms behind low pause GC?

Some languages, for exemple java, introduced a low pause GC. Those GC can do most of the work without pausing the whole world. This is obviously a quite hard problem because it require to analyze the ...
12
votes
5answers
2k views

High level vs. low level programming. Do I really have to choose? [closed]

Every once in a while I'm asked in interviews which I like the best- low level or high level. It seems to me that the implicit message is that they are both a specialty and they want to know which ...
12
votes
5answers
827 views

How can I get more experience with lower level programming?

I'm about 3 years experience as .NET developer, but I'm sad I haven't gotten to create anything that excites me because I'm just using puzzle pieces someone else has already created. I learned most ...
11
votes
10answers
2k views

What do you consider to be a high-level language and for what reason?

Traditionally, C was called a high-level language, but these days it is often referred to as a low-level language (it is high-level compared to Assembly, but it is very low-level compared to, for ...
11
votes
4answers
984 views

In what way(s) is LLVM Low Level?

In what way(s) is LLVM (Low Level Virtual Machine) Low Level? (At the time of writing, I did not find this expansion of the abbreviation "LLVM" on its web site, but on Wikipedia.) Is it called "Low ...
10
votes
5answers
9k views

What Are Some Advantages/Disadvantages of Using C over Assembly?

I'm currently studying engineering in Telecommunications and Electronics and we have migrated from assembler to C in microprocessor programming. I have doubts that this is a good idea. What are some ...
10
votes
4answers
837 views

Why do some programmers categorize C, Python, C++ differently? - regarding level [duplicate]

I am taking an introductory course on python and the instructor says that python is a high level language and C and C++ are low level languages. It's just damn confusing. I thought that C, C++, ...
10
votes
6answers
4k views

Where can I learn more about Low Level Programming [closed]

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
8answers
4k views

Learning computer architecture as a programmer [closed]

I typically run across gurus at SO and other places (instructors, book authors etc.) that would say something along the lines "This will cause alignment issues" or other low level tidbits. I want to ...
8
votes
4answers
2k views

A good interpreted language for a small embedded project [closed]

I have an mbed microcontroller which has a small ARM Cortex M3 on it. Basically, my effective resources for the project are ~25 KB of RAM and ~400 KB of Flash. For I/O I'll have a PS/2 ...
6
votes
8answers
1k views

Will taking a job in web development prevent a low-level programming career? [duplicate]

I'm a computer science student in my last year, and I want to get a job, but have difficulties finding one in my city where I can use what I already know pretty well. There is a company which does ...
6
votes
6answers
497 views

Why would you want to look at IL code?

I was reading a blog post over at Channel 9 about the release of an open source .NET/CLR decompiler. I was wondering as to why would you want to decompile a .NET/CLR application and look at its IL ...
6
votes
4answers
574 views

Low Level Exercises [closed]

I'm pretty comfortable with high-level languages and application development. However, although I have learned about low level topics such as the ones listed below, I have never done anything with ...
5
votes
4answers
1k views

Is it possible to automatically convert code from a low level language to a high level language?

I have seen several applications that claim to convert Java code to valid C or even C++. Converting from a high level language to a low level language is possible, no doubt about it. At least in ...
5
votes
3answers
1k views

What are the security risks/vulnerabilities every C programmer must be aware of?

There are many security risks coming from having close contact to the hardware as opposed to using well-tested and proved APIs from high level programming languages. It is much easier to cause a ...
5
votes
3answers
907 views

How would one go about reading memory from a process? Is it different by OS?

As an experienced web-developer, but a novice "low level" programmer, this stuff is sort of voodoo to me still. I'm curious about how one would even begin to go about finding a memory block, and then ...
3
votes
2answers
395 views

Functional Low-Level language that can use a webkit view

TL;DR: I need to develop an app which should look kind of the same on desktop and as a website incarnation. Since I am a web dev and have never developed for desktop, I want to use a language that ...
3
votes
4answers
408 views

I might be starting to do Arduino development and I would like some advice [closed]

So, today I looked at Arduino; seems very interesting. I still don't want to shell out the money just yet, as I have some questions, namely: Should I learn something about electronics? What and with ...
3
votes
1answer
452 views

Checking out systems programming, what should I learn, using what resources? [duplicate]

I have done some hobby application development, but now I'm interested in checking out systems programming (mainly operating systems, Linux kernel etc.). I know low-level languages like C, and I know ...
3
votes
1answer
151 views

Books/sources on inner workings of JavaScript [duplicate]

When I started studying C++ a couple of years ago, a lot of the books and texts I read did a very thorough job of explaining, how the code written would translate into concrete operations in the ...
3
votes
2answers
699 views

Memory management for fast message passing between threads in C++

Suppose there are two threads, which communicate by asynchronously sending data messages to each other. Each thread has some kind of message queue. My question is very low level: What can be expected ...
3
votes
1answer
125 views

Need pointers on my first Windows program [duplicate]

I'm a Unix programmer and I need to write a (hopefully simple) program for Windows that does the following: (1) Installs from a USB drive (2) Somehow integrates with the OS at a low-level in such a ...
2
votes
7answers
3k views

Is a degree needed for low-level/embedded programming jobs? [closed]

I know that it is possible to get into software development without a degree in computer science, but is it possible (or rather, common) to be able to get an embedded programming job without the ...
2
votes
1answer
497 views

How to start embedded development for developing a handheld game console?

I work as a iPhone app developer now, so I know a bit of c, c++ and objective c. Also have fiddled with Java and many other. All of them have been just high level application/games development. My ...
2
votes
3answers
195 views

How do you feel about browsers getting into the low level intricacies?

i was working on a website with FF4 and while resizing an element with Firebug, FF4 just crashed my nVidia Display Driver. Fortunately Windows 7 was able to help me by recovering from this serious ...
2
votes
0answers
175 views

What are the minimum memory requirments a microprocessors must have to perform any calculation? [migrated]

Please excuse my ignorance in low level things. A lot of the written below might be very wrong. As far as I understand (and I might be very wrong), there are two types of memory locations a ...
1
vote
5answers
581 views

What kinds of low level knowledge matter? [closed]

I realize that this question is similar to Low level programming - what's in it for me, but the answers didn't really address my question well. Part from just an understanding, how exactly does your ...
1
vote
3answers
156 views

Question about moving to embedded systems [closed]

I currently work as a .net developer and have coming up to 3 years experience in the industry as well as a degree in computer science specifically software engineering (I know that means nothing but ...
1
vote
1answer
75 views

How do VMs implement function calling?

I'm reading a compiler textbook that compiles to some form of assembly. Since I don't know this assembly language I decided to invent my own simple "assembly language" and implement a basic "virtual ...
1
vote
1answer
221 views

Next power of 2 for a number (in search for better “bit-twiddling” way)

I just wonder if there exists better (i.e. faster?) way to get the next power of 2 for a given number than the following one (maybe some better sort of "bit-twiddling" hack is possible?) ... static ...
1
vote
1answer
267 views

Is there any example or resource explaining/showing code from High-level to Low-level to deep down Machine code?

I have been searching for an example over the internet that shows any operation like saving a file or drawing anything in UI or any other sort that shows the implementation from High-leve language ...
1
vote
1answer
322 views

FPGA device + networking + software kit

Sorry for the very abstract and uncertain question, but I guess if I could ask it better I would have answered it myself. Here is the thing. I am getting more and more interested in FPGA. However, it ...
1
vote
0answers
37 views

Is a language that provides more abstractions to use it's own API, considered higher-level than a language that doesn't? [duplicate]

Consider two programming languages: Both run on a VM, have the same amount of abstraction levels between the programmer and the OS and CPU, etc. The only difference is inside the languages themselves ...
0
votes
2answers
1k views

Are there any languages that have both high- and low-level facilities? [closed]

Are there any languages that have both high- and low-level facilities? If not, is it feasible to create one? Why or why not? In theory, it would be very helpful to have a programming language that ...
0
votes
3answers
139 views

What is the absolute minimum set of instructions required to build a Turing complete processor

I have a general idea of how the processor handles instructions but spend my time working in mostly high level languages. Maybe somebody who works closer to the iron can provide some valuable insight. ...
0
votes
3answers
136 views

Why do executables depend on the OS but not on the CPU?

If I write a C program and compile it to an .exe file, the .exe file contains raw machine instructions to the CPU. (I think). If so, how is it possible for me to run the compiled file on any computer ...
0
votes
1answer
662 views

Where can I find a punched card simulator? [duplicate]

Possible Duplicate: Learning to program on punchcards I wasn't born in the era, but I'd like to experience writing a program with punch cards. Does anyone know of a program or an online ...
0
votes
2answers
108 views

Do VMs use one stack for everything?

Most VMs have a "call stack" to keep track of where to return from each function that was called. This is often simply regarded as "the stack". However often a stack is needed for operations that ...