Диапазон допустимых значений в помощь
Размеры в памяти - и все встает на свои места. short всегда 16, int 32 или 64 в зависимости от платформы и (возможно) компилятора. long 64, а чтобы был понятен масштаб бедствия - думай о структурах данных, чтобы ворочать гигабайтами.