No te creas, he visto peores....
Bueno, si a la clasificación te referís, te digo que no son 3 sino 5, ahora no recuerdo bien los nombres pero me puedo referir a ellos como niveles (en algunos libros está así):
Nivel 0:
Es el hardware de la PC, los circuitos, buses, etc. Todo físico y por sí solo no sirve para nada.
Nivel 1 o de microprogramación:
Acá ya hay programitas, que son los que están dentro de la unidad de control, son pequeñas secuencias que se ejecutan cada vez que se necesita hacer una acción: poner un dato en el bus, habilitar un puerto, etc... Varias de ellas, hacen una instrucción como por ejemplo: MOV, ADD, etc.
Nivel 2 o de lenguaje ensamblador:
A este corresponden aquellas instrucciones que vienen en la máquina sin que exista un sistema operativo, son los op codes del assembler (mov, mul, etc...).
Nivel 3 o de máquina de sistema operativo (creo):
Son todas las anteriores, más la funcionalidad que da el S.O. a los programas. Interrupciones, etc.
Nivel 4 o de lenguajes de alto nivel:
Son los lenguajes de alto nivel que ya conoces: Pascal, C, Smalltalk, etc.
Como vez, la relación es varias de nivel 1, forman una de nivel 2, varias del 2 las del 3 y así, excepto en el pasaje de 0 a 1 que se agrega coordinación solamente.
Bueno, fue largo de escribir. Espero que te sirva.