I am playing around with smali and baksmali on a small Hello World Android application I have written. My source code is:
package com.hello;
import android.app.
The opcode specification only describes the instructions. The dex file format is more than that - it contains all the metadata needed for the Dalvik VM (and the disassembler) to interpret the file - strings, classes, types, methods and so on. See also the official opcode spec, it's more complete and verbose than the one you linked.
BTW, the next version of IDA Pro will support disassembly of .dex files