Brainfuck: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
m →Istruzioni condizionali: accento di troppo |
Nessun oggetto della modifica |
||
Riga 131:
==== Copiare un [[byte]] ====
Brainfuck non include nessuna operazione per copiare
[->+<]
Riga 155:
7
(Ora le cose iniziano a diventare un po' più complicate. Noi possiamo riferirci ai
Il primo numero è inserito in [0], e gli si sottrae 48 per ottenere la cifra corrispondente (i codici ASCII per i numeri da 0 a 9 sono infatti quelli da 48 a 57). Questo è fatto mettendo un 6 in [1] ed usando un ciclo per sottrarre 8 da [0] il numero corrispondente di volte. (Questo è un metodo comune di sommare o sottrarre grandi numeri) Successivamente, si inserisce il segno di somma in [1]; si inserisce infine il secondo numero, sovrascrivendo il simbolo di somma.
Riga 173:
Il primo numero è inserito in [0], l'asterisco e poi il secondo numero sono inseriti in [1], ed entrambi i numeri sono corretti sottraendo da essi 48.
Ora entriamo nel ciclo principale della moltiplicazione. L'idea base è che ogni volta attraverso esso noi sottraiamo uno da [0] ed aggiungiamo [1] al totale corrente tenuto in [2]. In particolare: il primo ciclo interno sposta [1] su entrambi [2] e [3], mentre azzera [1]. (Questo è il metodo base per moltiplicare un numero.) Il
Ora aggiungiamo 48 al prodotto, inseriamo un risultato in [3], visualizziamo il prodotto usando i caratteri ASCII, e poi visualizziamo il risultato che abbiamo memorizzato.
== Commento ==
Poiché ogni locazione di array è specificata come un byte, il comando - è superfluo e potrebbe essere rimpiazzato con 255 comandi +. Similarmente, se l
== Linguaggi di programmazione simili ==
|