Os dados são lidos em blocos (setor) de 512 bytes (ou maiores para mais unidades) - assim você obtém 4.294.967.296 / 2 kbytes de dados = 2,2 tb - a limitação de endereçamento para discos MBR.
Não tenho certeza absoluta das complexidades, mas quanto maior o tamanho do setor, mais eficiente é a unidade - quase certamente devido, em parte, ao armazenamento em cache e aos buffers.
Do outro extremo -
Não faz nenhum sentido ler bits de uma unidade - a menor unidade "sensível" que pode ser representada é 8 bits = 1 byte. Até mesmo isso é para ser de pouca utilidade - e como o disco rígido está girando, ele pode também pegar um pedaço razoável de informação enquanto passa sob a cabeça, em vez de esperar que ele passe novamente.