Well, device drivers can be programmed in C++ now. But under the hood, at one time, it had to be created in assembly language. Assembly language is the closest to actual machine language (0's and 1's), so usually the programs that were written in it run fast because there's not much overhead as C++ or even worse, something like QBASIC. Programs are usuall small too. I wrote a small executable (.COM) program that rebooted the computer... 2 byte program. Yes, 2 bytes, not kilobytes, but bytes. That's the smallest you can get.
Here's a typical Assembly program written for the Turbo Assembler compiler. It prints out "Yo, I be da master of ebonics!"
; A program that displays line of text.
.MODEL SMALL
.STACK 100h
.DATA
DISPLAY DB 13,10,'Yo, I be da master of ebonics!$'
.CODE
START:
MOV AX,@DATA
MOV DS,AX
MOV AH,9
MOV DX,OFFSET DISPLAY
INT 21h
MOV AH,0
INT 16h MOV
AH,4Ch
INT 21h
END START
Assembly Language was popular in the Demo Scene - a community of programmers/hackers that made graphical special effects through assembly. It usually promoted their coding team or some other event. This was more popular in the late 80's and early nineties. Now I don't think it's as popular... around here anyways.
If you would like to see some examples of what these "Demos" are like, check out the link from my site:
http://www.xeonstudio.com/prog/prog.htm#demos
I've had some trouble running these on my W2K machine, but most of them work. My favorite ones are Astral Blur, Tribes, and Machines of Madness.