W pierwszej rundzie każdy generał informuje każdego innego, jaką decyzję podjął. Otrzymane informacje (i swój głos) każdy z generałów przechowuje w tablicy, nazwijmy ją decyzja. W następnych rundach każdy z generałów przekazuje innym zawartość swojej tablicy decyzja. Generał nie musi przekazywać tablicy decyzja samemu sobie; nie musi też odsyłać innemu generałowi jego własnej decyzji. Jeżeli za weźmiemy liczbę zdrajców, do prawidłowego uzgodnienia potrzeba rund. Jednocześnie sumaryczna liczba wszystkich generałów (wiernych i zdrajców) musi wynieść co najmniej

Głosowanie także dokonuje się wieloetapowo. Najpierw dokonuje się wyboru większości spośród decyzji przekazanej bezpośrednio przez danego generała i uzyskanych od innych informacji o decyzji tego generała. Wynik głosowania uznaje się za prawdziwy głos danego generała i zapamiętuje w tablicy wybor_wiekszosciowy. Następnie podejmuje się ostateczną decyzję przez wybór większości z tablicy wybor_wiekszosciowy.

Wadą algorytmu bizantyjskich generałów jest bardzo duża liczba komunikatów potrzebnych, aby uzgodnić wspólną decyzję.