Showing posts with label ASSEMBLER. Show all posts
Showing posts with label ASSEMBLER. Show all posts

Saturday, June 3, 2023

Eu și limbajele de asamblare

Eu sunt un fel de arheologie a informaticii. Am început să programez în cod mașină pe calculatorul CIFA 101 Economist. Am continuat să programez în COPCODER pe calculatorul NEAC 1240 și la venirea calculatorului IBM 360 am lucrat în limbajul de asamblare al acestui calculator, numit ASSEMBLER. După aceea, la sosirea în ASE a calculatorului FELIX C256 am făcut programe în limbajul ASSIRIS. La apariția calculatoarelor personale, am lucrat în limbajul ASM.
Cine știe să programeze în limbaj de asamblare înțelege cum se alocă toate resursele unui calculator și are explicații rezonabile la tot ce se întâmplă pe durata rezolvării oricărei probleme, căci înțelege cum stau lucrurile la nivelul celor mai mici detalii.
Acum se vorbește de Inteligența Artificială. Se știe că aceasta nu aduce noi resurse, noi mecanisme de alocare a resurselor. De aceea, este necesar să se cunoască limbaje de asamblare, căci numai cunoașterea acestor limbaje va permite noi descoperiri în zona definirii de noi structuri de date, de modele alocări de memorie și de regăsire de informație, căci una este să lucrezi brut pe cuvinte și cu totul altfel se pune problema de a lucra pe șiruri de biți. Inclusiv, cine vrea să descopere noi instrucțiuni de prelucrare din limbajul de asamblare, o va face doar dacă știe acele limbaje, designul lor și justifică noile elemente pe acre dorește să le implementeze. Inteligența artificială nu crează nimic. Ea vine doar să folosească ceea ce există, uneori, să folosească mai bine, dar nu aduce acel plus de creativitate în limbajele de asamblare care duc la progresul informaticii, tocmai acum când au dispărut barierele pe care le aducea lipsa de memorie din cauze tehnice, acum depășite. Chiar structura instrucțiunii din limbajul de asamblare este nepotrivită în raport cu puterea de prelucrare și resursele de memorie. Trebuie să se efectueze saltul calitativ în limbajele de asamblare pentru a ne apropia și mai mult de performanțele computerelor care să le facă mai apropiate de lucrul în limbaj natural, ca partener decent al nostru, chiar dacă noi nu venim din lumea informaticii.


(03 iunie 2023)

Friday, March 17, 2023

1.000 de oameni care m-au impresionat: Octavian ȘĂRBAN

Octavian ȘĂRBAN a fost studentul din grupa cu care am debutat eu ca asistent stagiar. A fost un lucru nefiresc pentru mine ca un tip de 24 de ani direct de pe băncile facultății să intre la seminarul unei grupe de studenți din anul al V-lea, adică anul terminal. Era disciplina de Programare în limbaj de asamblare, limbaj în care lucrasem eu din plăcere când făceam stagiul de practică scriind programe pentru mine în ASSEMBLER pe care le rulam pe calculatorul IBM 360.
Grupa aceea de studenți era o grupă foarte bună de la Secția de Mecanizarea și Automatizarea calculului Economic, dar și în aceste condiții pentru mine era foarte greu. Munceam din greu să pregătesc seminariile și documentația limbajului de asamblare de care dispuneam era una foarte bună, dar nu era pentru începători, ci pentru programatorii avansați și trebuia să construiesc secvențe de program de un cu totul alt nivel. Acolo instrucțiunile erau puse în ordine alfabetică și eu aveam nevoie de o altă ordonare, pe tipuri de operații și de operanzi.
În acea grupă era studentul Octavian ȘĂRBAN, pe care l-am remarcat din prima clipă. El era un excelent programator și înțelegea rapid problemele pe care le prezentam. Lucra foarte curat, construind secvențe de program riguroase, ceea ce mă ajuta foarte mult. Am înțeles că el era cel mai bun student din serie. Peste ani, am aflat că el a fost șeful de promoție din anul 1972.
Pe mine m-a impresionat Octavian ȘĂRBAN pentru traiectoria lui profesională. Toată viața lui el a făcut programare și nu oricum și nu oriunde, cu programare de top în locuri unde însemnătatea calculatorului electronic era cunoscută și munca programatorului era respectată. 
Eu am făcut un interviu cu Octavian la 01 decembrie 2020 care se află la adresa
https://ionivan1947.blogspot.com/2020/12/interviu-cu-informaticianul-octavian.html
Sunt prieten pe Facebook cu Octavian ȘĂRBAN și-i urmăresc postările interesante pe care le are acolo, ceea ce-mi verifică teoria că un profesionist de nota 10 în meserie, merge pe stradă de nota 10, spune un banc de nota 10, scrie o scrisoare de nota 10, vede un film de nota 10 și are postări pe rețele de socializare tot de nota 10. De aceea eu nu sunt deloc optimist când văd politicienii mediocrii promițând marea cu sarea, pentru că ei fiind de nota 6 (șase), vor gândi strategii de nota 6(șase), vor lua decizii de nota 6(șase), se vor înconjura de inși tot de nota 6(șase).
Când mă gândesc la începuturile muncii mele de asistent universitar stagiar îl am în fața ochilor pe Octavian tânăr și subțirel, sprinten care se oferea să iasă la tablă să scrie programe. Ce vremuri!


(17 martie 2023)

Tuesday, March 7, 2023

1.000 de oameni care m-au impresionat: Richard MULLER

Richard MULLER a fost și el absolvent al Secției de Mecanizare și Automatizare a calculului Economic din Facultatea de Calcul Economic și Cibernetică Economică, pe vremea când facultatea avea durata studiilor de 5 ani și admiterea avea trei probe, din care una de algebră, una de analiză matematică și a treia probă era la alegere dintre fizică, geografie și economie politică, dar viitorii studenți de la Mecanizare în proporție covârșitoare alegeau fizica.
Richard MULLER, după terminarea facultății, având o medie foarte mare, a obținut la repartiție un post în centrul de calcul al ASE. Eu mă cumoșteam cu el de la cămin din vremea studenției noastre și după ce a lucrat în Centrul de calcul al ASE, locuia în Berceni unde locuiam și eu, iar duminica ne întâlneam prin comunele de lângă București, căci amândoi aveam plăcerea de a merge pe biciclete. Eu aveam o semi-cursieră SPUTNIK cu care mergeam duminică de duminică. Făceam pauze și discutam despre programare. El îmi vorbea despre proiecte. Îmi amintesc că lucra ceva legat de niște fișiere înlănțuite și avea deja un software făcut de el, care implementa funcții extrem de interesante.
Richard MULLER era un nume în Centrul de calcul. Inginerul Iulian SATRAN, considerat în acele timpuri un creier adevărat printre informaticienii care lucrau pe calculatorul IBM 360 avea cuvinte de apreciere la adresa lui Richard MULLER, lucru care nu se întâmpla și în alte cazuri.
Am mers la câteva seminarii științifice unde Richard MULLER și-a prezentat produsele software la care lucrase și m-a impresionat deschiderea lui pentru lucrurile noi, dar comparativ cu alții care doar vorbeau, Richard MULLER era omul care vorbea despre lucruri noi cu care lucrase efectiv și proba cu componente software operaționale.
La un moment dat, când l-am întâlnit duminica în drumurile noastre cu bicicletele mi-a zis că i s-a aprobat plecarea din țară și de aceea nu mai lucra în Centrul de calcul. I-am spus că mă bucur pentru el, că-și vede visul realizat și l-am asigurat că așa cum este el de serios și de bine pregătit profesional va fi strălucitor indiferent unde va merge. 
De atunci nu l-am mai întâlnit pe Richard MULLER, dar uneori mă gândesc la cât de bun programator era el, la cât de temeinic lucra și la cât de serios își argumenta opțiunile și soluțiile. Mi-am dorit de multe ori să fiu și eu cam cu același mod de a lucra, pentru că în mintea mea, Richard MULLER era garanția succesului garantat, căci atunci când faci o treabă cum scrie la carte, nu există riscul vreunui rateu sa vreunei interpretări din partea celor care sunt în stare doar să-și dea cu părerea și nimic altceva.


(07 martie 2023)

Sunday, February 26, 2023

1.000 de oameni care m-au impresionat: Gheorghe LUPU

Și Gheorghe LUPU mi-a fost student și încă un student foarte bun. Voi scrie aici despre o întâmplare. Lucram la un contract și vinerea, am fost anunțat de un partener că se retrage, iar predarea unei faze, era luni. Era o situație critică. Mi-a venit ideea să stau de vorbă cu doi dintre cei mai buni studenți ai mei și aici mă refer la Gheorghe LUPU și la Adrian LICURICEANU. Le-am explicat ce este de făcut și i-am rugat să mă ajute să ies la liman cu ceea ce partenerul nu oferea. Am îmărțit sarcinile. Am lucrat neîntrerupt vineri în partea a doua a zilei, sâmbătă și duminică, iar duminică spre seară scoteam la imprimantă partea din documentația aferentă, căci programele erau deja integrate. Norocul nostru a fost că respul lucrărilor specifice acelei faze le aveam făcute deja și doar acea bucățică trebuia realizată. Aportul lui Gheorghe LUPU a fost decisiv. Mă bazam pe ceea ce știa el să facă, pentru că mai lucrase și cu alte ocazii și lucrase bine.
Nu era o surpriză, căci Gheorghe LUPU era unul dintre studenții de la Secția de Informatică Economică din Facultatea de Cibernetică, Statistică și Informatică Economică intrați în facultate printr-o selecție dură cu două matematici și o fizică la examenul de admitere, în plus pe vremea aceea, liceul era liceu și se făcea carte adevărată. În plus, pe durata celor cinci ani de studii, disciplinele aveau marea lor majoritate două semestre, examenele erau scris și oral pe calculator și notele reflectau cu adevărat că studentul știe programare, adică să scrie programe, nu să recite programe.
Împreună cu Gheorghe LUPU și cu alți studenți, am elaborat niște materiale pe care le redau aici.
Ion IVAN, Alexandra KARADIMOU, Adrian LICURICEANU, Gheorghe LUPU - Metrici de complexitate software bazate pe dependențele instrucțiunilor, Informatica Economică, vol. 3, nr. 3, 1999, pg. 11 - 19
Ion IVAN, Alexandra KARADIMOU, Sebastian TCACIUC, Gheorghe LUPU - Aplicații orientate obiect în limbaj de asamblare, Studii şi Cercetări de Calcul Economic şi Cibernetică Economică, vol. 33, nr. 3, 1999, pg. 11 – 22
Ion IVAN, Gheorghe LUPU, Adrian LICURICEANU, Substituiri de metrici software, Studii şi cercetări de calcul economic şi cibernetică economică, vol. 33, nr. 1, 1999, pg. 25 – 34
Am admirat tot timpul la acest student modestia lui, capacitatea de a vei cu soluții și profunzimea abordărilor, toate având ca sursă muncă, muncă și iar muncă.





(26 februarie 2023)

Saturday, November 27, 2021

Virgil HORNOIU, un om de nota 10

Virgil HORNOIU, fostul meu coleg din Centrul de calcul al ASE, omul de mare caracter cu care am colaborat în vremurile mele de început și m-a ajutat de pe poziția pe care o avea la dispecerat și la operarea calculatorului IBM 360, să rezolv multe probleme, pe care oamenii în ziua de azi nu le-ar înțelege în niciun caz.
Virgil este omul care nu vorbește mult, dar face foarte multe. Cu el discuți, îi explici. El evaluează situația și-ți propune o soluție la problema pe care i-o prezinți. Dacă a fixat o oră, ora aceea așa rămâne. El se ține de cuvânt. 
În vremurile de demult, se proceda astfel:
- șeful de contract enunța problema,
- mă documentam,
- defineam algoritmul de rezolvare,
- elaboram schema logică,
- constriam setul de date de test,
- scriam programul pe foi de programare,
- duceam foile spre a fi perforate cartelele,
- pachetul de cartele mergea la dispecerat,
- erau rulate programele,
- se obținea o imprimantă,
- dacă se obțineau rezultate complete și corecte era perfect și gata,
- dacă erau erori, se făceau corecții,
- se mergea din nou cu cartelele la dispecerat, 
- etc, etc, etc.
Rolul lui Virgil HORNOIU era fundamental, mai ales când trebuia să se obțină rulări mai multe pentru a reuși încadrarea în termene. Se lucra contra cronometru, iar Virgil HORNOIU știa să găsească acele momente când să intercaleze pachetele de cartele ceva mai mici printre lucrări mari. Atunci el spunea că dacă aștepți 10 minute va veni cu imprimanta și cu cartelele proaspăt preluate de cititorul de cartele al calculatorului, programul compilat și eventual intrat în editarea de legături și era și mai bine dacă intra programul în execuție.
Acum, Virgil HORNOIU a împlinit o foarte frumoasă vârstă. Îl urmăresc pe Facebook și nu este schimbat deloc. Este exact cu aceeași privire pe care o avea atunci când discutam cu el.
Să ne trăiești Virgil HORNOIU, căci ești omul cu care am colaborat excelent și dacă s-ar mai ivi ocazia, aș colabora fără să stau pe gânduri nicio secundă!







(27 noiembrie 2021)