All your constant data and all (constant) code form the code section. To access the code section there exist two code models:
You can take the whole 32 bit address to call a function and can write programs 4GB large. This is the large (normal) code model.
But you can even call your functions relative to the program counter (pc) with 16 bit offsets. This is the small code model. The advantages are the same as in the small data model - only the disadvantages are different: