We can approach our study of the JVM like any other computer. First, there's the organization:
The Java specification specifies three things:
Bytecodes (instruction set)
.class file format
Verification algorithm (to make sure Java programs don't do anything suspicious)
The actual specification can be found here:
There are several assembly languages for the JVM. Most are similar to Jasmin.
Documentation and downloads for Jasmin are available at:
http://jasmin.sourceforge.net/
A Jasmin overview with demos are here:
To gain a good understanding of the JVM and Jasmin, read (or attempt) the JVM Project.