Sorry, but this is not quite what I expect of a question.
First, your "lines of code" are completely taken out of context, since the first column indicates location, so we are missing all locations in-between. One minus for that.
Secondly, please indicate this as homework using the appropriate tag. One minus for that.
Third, please include a reference to the original source, like the PPT file your university gave you. Twenty minus for that.
Consider yourself lucky that I can only subtract one.
Now I'm not a bad guy, all taken together, so here are my answers FWIW:
LENGTH is the label belonging to an address 0033 reserving a 3-byte word, located in the vicinity of the current PC location. Since assembler is autonomous in its decision, since PC-relative is to take priority, and since an offset of 2047 max is more than sufficient, PC-ralative is taken by the assembler. If you look at the opcode in the PPT I linked, you'll see a PC-relative (p=1) offset of 2D (hex), and the location after the LDB instruction is 6, and 2D+6=33 (all hex), QED.
In the same sense is 'b': Since b=0 and p=0 we use immediate addressing, and the opcode has an "address" of 3, so A is loaded with the constant 3.
Only the plus signs in the opcodes indicate format4 using 4 byte instructions with 20-bit address fields.