Denizaltı gemisinin gövdesi çift çeperlidir. Bu iki çeper arasındaki boşlukta, odaya benzeyen bölmeler vardır. Sarnıç adı verilen bu bölmelere su veya hava doldurmak mümkündür. Denizaltı gemisi denizin yüzeyinde ilerlediği zaman, sarnıçlar havayla doludur. Bu sırada, su kitlesinin aşağıdan yukarıya itme gücü, denizaltı gemisinin tüm ağırlığından daha çoktur. Eğer, sarnıçlar deniz suyuyla doldurulursa, denizaltı gemisi ağırlaşarak, dalışa geçer. Denizaltı gemisinin tekrar yüzeye çıkması için, basınçlı hava pompaları, sarnıçlardaki deniz suyunu dışarıya atarlar. Bazen yüzeye çıkmak için, denizaltı gemisinden ayrılabilen, büyük ve ağır bir safra, denize bırakılarak hafifleme sağlanır.
Bir denizaltı gemisi denizin dibine inebilmek için, genellikle iki yöntem kullanılır: balast tankları ve pervaneler.
Balast tankları, denizaltı gemisinin yüzerliğini kontrol etmek için kullanılan su dolu tanklardır. Bu tanklar, denizaltı gemisi su yüzeyindeyken boşaltılarak geminin ağırlığını artırır ve denizaltıyı aşağı doğru çeker. Denizaltı gemisi, bu şekilde suyun altına doğru inebilir.
Pervaneler ise, denizaltının hareketini kontrol etmek için kullanılan motorlardır. Denizaltı gemisi pervaneleri çalıştırarak, denizaltının su altındaki konumunu kontrol edebilir. Pervaneler, denizaltının hareketini kontrol etmek için kullanılan hidrolik sistemler tarafından kontrol edilir.
Denizaltı gemisi denizin dibine inmek için, önce balast tankları suyla doldurulur ve denizaltı gemisi ağırlaştırılır. Bu, denizaltının suya batmasına ve derinlere inmesine neden olur. Daha sonra, pervaneler kullanılarak denizaltının konumu kontrol edilir ve denizaltı gemisi istenilen derinliğe ulaşır.
Denizaltı gemisi denizden çıkarken ise, balast tankları boşaltılarak denizaltının ağırlığı azaltılır ve denizaltı su yüzeyine doğru çıkar. Pervaneler yine kullanılarak denizaltının konumu kontrol edilir ve denizaltı gemisi su yüzeyine ulaşır.