Eğer herbir konumdaki komut baskın olursa ya da her zaman bir sonraki konumlardan önce çalışır ve dizideki iki komut arasında başka bir komut çalışmazsa,komut dizisi temel blok oluşturur denir.Bu tanım birçok yönden daha genel.Örneğin;başka atlamalar tarafından hedef alınmamış etiketlere koşulsuz atlamalara izin veriyor.Bu tanım,algoritma oluştururken temel blokla çalışmanın kolay olduğu özellikleri somutlaştırıyor. Bloğun bitimine ulaştıktan sonra kontrolün gönderilebileceği bloklara o bloğun ardılları denir. Bloğa girerken kontrolün gelebileceği bloklara o bloğun öncülleri denir. Kod listelemesinden temel blok oluşturma algoritması basittir:kodu tararsın,blok sınırlarını(kontrol gönderip ,kontrol alabildiği için bloğu başlatıp,bitirebilen komutlar)işaretlersin.Sonra,listeleme bu noktalardaki "ani geçiş"olur ve temel blok kalır.Bu yöntem her zaman en büyük temel blokları oluşturmaz ama çoğu zaman yeterlidir. Temel bloğu bitiren komutlar şunları içerir:
- Koşulsuz ve koşullu dallar,dolaysız ve dolaylı
- Çağırılan yordama dönüşler
- Ayrıklık atabilen komutlar
- İşlev çağrıları temel blokların sonunda olabilir,eğer dönmüyorlarsa(ayrıklık atan fonksiyonlar ya da C`deki longjmp ve exit çağrıları gibi)
- Yordam ve işlev giriş noktaları
- Atlamaların hedefleri ya da dallar
- Bazı koşullu dalları izleyen "düşük geçiş"komutları
- Ayrıklık atan komutları izleyen komutlar
- Ayrıklık kotarıcıları