Successivo > Base 2

Data una sequenza binaria incrementare di 1 il suo valore

Esempi

Nastro inizialeNastro finale
01
101110
1111000

Diagramma di stato

  1. Si sposta a destra
  2. Se incontra uno 0 scrive 1 e ha finito
  3. Se incontra un 1 scrive 0 col riporto di 1… e continua a sinistra

Quintuple #1

(0, 0, 0, 0, >)Va a destra
(0, 1, 0, 1, >)
(0, -, 1, -, <)Successivo?
(1, 0, H, 1, -)Scrive 1, stop
(1, -, H, 1, -)
(1, 1, 1, 0, <)Scrive 0 e va a sinistra col riporto di 1

Quintuple #2

Più compatto

(0, 01, 0, 01, >)Va a destra sia con 0 che con 1
(0, -, 1, -, <)Successivo?
(1, [0-], H, 1, -)Se trova 0 oppure vuoto scrive 1
(1, 1, 1, 0, <)Se trova 1 scrive 0 e va a sinistra, col riporto di 1

Lascia un commento