{"id":379,"date":"2021-11-07T23:05:28","date_gmt":"2021-11-07T22:05:28","guid":{"rendered":"https:\/\/workerbase.org\/wordpress\/?p=379"},"modified":"2021-11-20T15:48:45","modified_gmt":"2021-11-20T14:48:45","slug":"programmabilita-anche-minima","status":"publish","type":"post","link":"https:\/\/arkenidar.com\/wordpress\/2021\/11\/07\/programmabilita-anche-minima\/","title":{"rendered":"Programmabilit\u00e0 &#8230; anche minima"},"content":{"rendered":"\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/arkenidar.github.io\/resm_aka_bbjj\/circuits_in_logisim\/circuit_schematics.png\"><img decoding=\"async\" src=\"https:\/\/arkenidar.github.io\/resm_aka_bbjj\/circuits_in_logisim\/circuit_schematics.png\" alt=\"\"\/><\/a><figcaption>Una moderna incarnazione della storica e primordiale Turing Machine. Al posto di nastri magnetici memorie ad accesso non necessariamente sequenziale, limite dei nastri magnetici dove farlo era lento e dispendioso. Ma rimane un Macchina di Turing in quanto coglie l&#8217;essenza di computer come lo aveva pensato Alan Turing, essenza che vive ancora oggi in circuiterie pi\u00f9 complesse, ma prima presento questa complessit\u00e0 ridotta e minima, poi si pu\u00f2 studiare sulle varie architetture cosiddette dei computers con il loro hardware programmabile col software.<\/figcaption><\/figure>\n\n\n\n<p>Fase 1: Il puntatore di istruzione (IP, Instruction Pointer), seleziona quale istruzione leggere dalla memoria ROM di programma formato da una serie di istruzioni. L&#8217;istruzione corrente fluisce in 4 destinazioni che la scompongono: 2 che sono la sorgente e la destinazione di copia di bits di memoria, e 2 che sono i puntatori alle 2 possibili istruzioni successive, selezionate dal Path Selector (PS, selezionatore di percorso).<\/p>\n\n\n\n<p>Fase 2: Avviene la copia del bit (parte di informazione) tra sorgente e destinazione. Questo pu\u00f2 anche modificare il Program PS (Path selector), coi suoi effetti.<\/p>\n\n\n\n<p>Fase 3: Viene aggiornata l&#8217;istruzione corrente mediante IP (Puntatore a istruzione). L&#8217;istruzione corrente specificamente consiste nella istruzione contenuta nella memoria ROM individuata dall&#8217;indirizzo del Puntatore a Istruzione, indirizzo contenuto nel Puntatore a Istruzione.<\/p>\n\n\n\n<p>Nota: forse tra imprecisioni e varianti possibili di questo design le cose non sono esattamente cos\u00ec, ma con differenze.<\/p>\n\n\n\n<p>Ecco mostrato come un programma viene eseguito, istruzione per istruzione, con ogni istruzione avente 2 possibili istruzioni prossime, con selezionatore di istruzione prossima, e con il nocciolo dell&#8217;istruzione che consiste nella copia di bits con 2 posizioni una come fonte da cui prelevare il dato, l&#8217;altra come specificazione del dove collocarlo. Muovendo bit si ha anche immissione ed emissione di informazioni, che possono cos\u00ec essere elaborate.<\/p>\n\n\n\n<p>Con queste semplici istruzioni \u00e8 possibile derivarne ogni altra essendo Turing Complete il design. Io ne ho derivate ad esempio istruzioni dell&#8217;algebra di George Boole per fare operazioni di somma e conteggio.<\/p>\n\n\n\n<p>Una sua variante per\u00f2 potrebbe avere accesso indiretto alla memoria, ovvero con memorie in RAM contenenti indirizzi da cui leggere informazioni o scrivere informazioni, un p\u00f2 come il PEEK &amp; POKE nei sistemi BASIC. Ovviamente una Turing Machine classica a memoria su nastri magnetici avrebbe qualche problema a fare questo, anche se non sarebbe impossibile tecnicamente.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Fase 1: Il puntatore di istruzione (IP, Instruction Pointer), seleziona quale istruzione leggere dalla memoria ROM di programma formato da una serie di istruzioni. L&#8217;istruzione corrente fluisce in 4 destinazioni che la scompongono: 2 che sono la sorgente e la destinazione di copia di bits di memoria, e 2 che sono i puntatori alle 2 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[22],"tags":[],"class_list":["post-379","post","type-post","status-publish","format-standard","hentry","category-computer"],"_links":{"self":[{"href":"https:\/\/arkenidar.com\/wordpress\/wp-json\/wp\/v2\/posts\/379","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/arkenidar.com\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/arkenidar.com\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/arkenidar.com\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/arkenidar.com\/wordpress\/wp-json\/wp\/v2\/comments?post=379"}],"version-history":[{"count":9,"href":"https:\/\/arkenidar.com\/wordpress\/wp-json\/wp\/v2\/posts\/379\/revisions"}],"predecessor-version":[{"id":390,"href":"https:\/\/arkenidar.com\/wordpress\/wp-json\/wp\/v2\/posts\/379\/revisions\/390"}],"wp:attachment":[{"href":"https:\/\/arkenidar.com\/wordpress\/wp-json\/wp\/v2\/media?parent=379"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/arkenidar.com\/wordpress\/wp-json\/wp\/v2\/categories?post=379"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/arkenidar.com\/wordpress\/wp-json\/wp\/v2\/tags?post=379"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}