Comentariu introductiv
Complexitatea aplicaţiilor de utilizare a calculatorului în diverse domenii de activitate (inclusiv in educatie), a determinat perfecţionarea, atât a sistemelor de operare şi limbajelor de programare, cât şi a tehnologiilor şi platformelor. Au fost concepute şi elaborate noi sisteme de operare, noi limbaje de programare, noi tehnologii. Dacă în anii ’70 inventarea şi utilizarea microprocesorului au însemnat o revoluţie în domeniul arhitecturii calculatoarelor, în anii ’90 a fost o adevărată revoluţie, atât în domeniul reţelelor de calculatoare, cât şi în domeniile limbajelor de programare (Java şi JavaScript) şi sistemelor de operare (Linux, Windows). Astfel, au apărut tehnologiile Web. Trebuie menţionate dezvoltarea şi evoluţia limbajului C++ care în anii ’80 a implementat şi dezvoltat modelul orientat spre obiecte (modelul programării obiectuale are rădăcini în limbajele SmallTalk, Lisp etc.) şi programarea orientată spre obiecte (OOP-Object Oriented Programming).
Definition. Assembler: Assembly language is the uncontested speed champion among programming languages. An expert assembly language programmer will almost always produce a faster program than an expert C programmer.
"Machines have so much memory today, saving space using assembly is not important. If you give someone an inch, they’ll take a mile. Nowhere in programming does this saying have more application than in program memory use. For the longest time, programmers were quite happy with 4 Kbytes. Later, machines had 32 or even 64 Kilobytes. The programs filled up memory accordingly. Today, many machines have 32 or 64 megabytes of memory installed and some applications use it all. There are lots of technical reasons why programmers should strive to write shorter programs, though now is not the time to go into that. Let’s just say that space is important and programmers should strive to write programs as short as possible regardless of how much main memory they have in their machine."
Source: The Art of Assembly Language Programming, Spring 2008, Yale University, http://flint.cs.yale.edu/cs422/doc/art-of-asm/pdf/ (pdf)
Ex.: prog1.asm
==================
.model small
.stack
.data
a db 00110000b
.code
start:
mov ax,@data
mov ds,ax
mov bl,01010000b
mov al,a
not al ;AL=11001111b
mov al,a
and al,bl ;AL=00010000b
mov al,a
or al,bl ;AL=01110000b
mov al,a
xor al,bl ;AL=01100000b
mov ah,4ch
int 21h
end start
===================
Descriptori
Memoria fizică, memoria virtuală, instructiuni, registri, adrese, flux de calcul, sumator, microporocesor, microprogramare, macroinstructiune, tipuri de date, memoria stiva, intreruperi de sistem.
|
Obiectivele disciplinei |
|
|
Obiectivele cursului |
Obiectivele activităţilor aplicative (seminar, laborator, proiect) |
|
|
1. ELEMENTE INTRODUCTIVE PRIVIND CALCULATOARELE: Reprezentările funcţionale şi structurale ale sistemelor de calcul, Organizarea calculatorului, Magistrale, Tipuri de microprocesoare, Modalităţi de evaluare a performanţelor;
2. UNITATEA CENTRALA DE PROCESARE (UCP): Structura de procesor, funcţionare, cale de date, unitate de control, arhitectura unei UCP elementare, adresarea şi selectarea memoriei principale, indicatori de condiţii şi de control, interfaţa cu exteriorul, tipuri de semnale pe magistralele externe, întreruperi şi excepţii, memoria stivă, seturi de instrucţiuni, CISC/RISC, moduri de adresare, unitatea de control, structuri de tip pipeline (conductă);
3. ORGANIZAREA MEMORIEI: Funcţie, caracteristici principale, organizarea pe niveluri ierarhice, RAM static, RAM dinamic, cache, tehnici de administrare a memoriei, implementarea memoriei virtuale;
4. ORGANIZAREA SISTEMULUI DE INTRARE/IESIRE (I/O): interfeţe, comunicaţii seriale sincrone şi asincrone, modalităţi de transfer I/O, standarde de interfaţare la magistralele calculatorului: ISA, PCI, EIA232, USB;
5. NIVELUL MICROARHITECTURII: Un exemplu de microarhitectură, Proiectarea nivelului microarhitecturii, Microarhitectura Pentium, Microarhitectura UltraSPARC, Microarhitectura Java
6. ARHITECTURA SETULUI DE INSTRUCŢIUNI: Tipuri de date, Formate de instrucţiuni, Adresarea, Tipuri de Instrucţiuni, Fluxul de control;
7. NIVELUL LIMBAJULUI DE ASAMBLARE: Introducere în limbajul de asamblare Macro, Procesul de asamblare, Editarea legăturilor şi încărcarea programelor.
SEMINAR ÎN SISTEM TUTORIAL
1. Structura unui program în limbaj de asamblare.
2. Utilizarea registrelor.
3. Organizarea memoriei.
4. Tipuri de instrucţiuni.
5. Utilizarea întreruperilor.
6. Crearea unei interfeţe utilizator.
7. Lucrul cu şirurile. Căutare.
8. Lucrul cu şirurile. Comparare.
9. Utilizarea procedurilor.
1. A. Tanenbaum, Retele de calculatoare, Ed. Byblos, ed. a IV-a, 2004
2. Andrew Tanenbaum - Organizarea structurată a calculatoarelor, Editura Agora, 1999, Ed. Morgan Kaufmann, 2001/2004
3. D.Gorgan, G.Sebestyen - Structura calculatoarelor, Editura Albastră, 2000.
4. D. A. Patterson, J. L. Henessy – Organizarea şi proiectarea calculatoarelor. Interfaţa hardware/software, Ed. All , Bucureşti, 2002
5. S. Burada, G. Ciobanu, Atelier de programare in retele de calculatoare, Ed. Polirom, 2001
6. Rudolf Eigenmann and David J. Lilja, Von Neumann Computers, 1998, https://engineering.purdue.edu/~eigenman/reports/vN.pdf
7. Gavin's Guide to 80x86 Assembly", http://www.intel-assembler.it/portale/5/A-guide-about-Assembler-in-8-parts/A-guide-about-Assembler-in-8-parts.asp
8. The Art of Assembly Language Programming, Spring 2008, Yale University, http://flint.cs.yale.edu/cs422/doc/art-of-asm/pdf/
9. M. Vlada, Informatica, Ed. Ars Docendi, 1999 (exista la Biblioteca FMI si BCU) - sect. 4.8 si 5.1-5.5
10. M. Vlada, http://ebooks.unibuc.ro/informatica.htm/Seiso/ , Software educational - Sisteme de operare, Web site al Universitatii din Bucuresti, 2002 – “sistemul Internet”
11. D. Dragulici, UB, FMI, http://www.cs.unibuc.ro/~dra/did/ac/acindex.html
12. R. Lupsa, UBB, FMI, http://www.cs.ubbcluj.ro/~rlupsa/edu/ac/doc/
Exemple Programe:
limbaj_asamblara
Notes:
1. The von Neumann Architecture of Computer Systems
- Von Neumann, J. 1981. First draft of a report on the EDVAC." In Stern, N. From ENIAC to Univac: An Appraisal of the Eckert-Mauchly Computers. Digital Press, Bedford, Massachusetts, http://www.csupomona.edu/~hnriley/www/VonN.html
- John von Neumann's EDVAC Report 1945 John von Neumann's 1945 on June 30 by Hungarian mathematician John von Neumann (1903-1957) , http://www.velocityguide.com/computer-history/john-von-neumann.html
- http://www.wps.com/projects/EDVAC/
2. The Virtual Von Neumann Architecture and the global computer
- http://meta-artificial.blogspot.com/2005/07/virtual-von-neumann-architecture.html
The South Korean government has said it plans to digitise all textbooks for elementary, middle and high school students by 2015. This plan for "smart education" is aimed at helping students create their own study pattern, and lighten their backpacks. Source: http://www.channelnewsasia.com/
"Ministerul Educaţiei, Ştiinţei şi Tehnologiei din Corea de Sud a anunţat un plan pentru migrarea de la manualele şcolare clasice, pe suport de hârtie, la manuale în format electronic. Ministerul a alocat proiectului suma de aproximativ două miliarde de dolari, iar tranziţia urmează să se finalizeze în 2015, când se estimează că toţi elevii din învăţământul primar vor beneficia de noile manuale, precum şi de dispozitive hardware corespunzătoare, tablet PC-uri sau telefoane smart. În următorii ani autorităţile trebuie să se asigure că toate materialele didactice vor fi digitalizate. Toţi elevii sud coreeni vor primi gratuit tabletele digitale, iar manualele vor fi disponibile pentru descărcare de pe serverele ministerului, prin intermediul reţelelor WiFi locale." Sursa: http://portal.edu.ro/index.php/articles/11512
Tablet PC – calculator portabil al cărui ecran (de regulă cu o diagonală de 12 inchi) îndeplineşte o funcţie dublă: cea de afişare a informaţiei şi interfaţă de manipulare a calculatorului (de obicei prin intermediul unui stylus -unealtă de scris sub forma unei mini-baghete din material plastic sau metal având la vârf o bobiţă din plastic, folosită pentru interacţiunea cu ecranele tactile rezistive, sau folosind degetele - touch). Primul tablet a fost lansat în 2001 de către Microsoft şi folosea Windows XP Tablet PC Edition.
Tipuri de Tablet PC: a) tip broşură ; b) tip placă; c) tip decapotabil; d) tip hibrid.
Sursa: http://www.it4fans.ro/
Topics: Mobile Learning (m-Learning), Mobile Network Technology, Mobile software, Mobile Internet, Mobile dating, Health impact, Mobile phone features
"M-learning’ is the follow up of E-learning and which originates from D-learning (distance learning). M-learning is the delivery of education to the students who are not having fixed location or who prefer to use mobile phone technology for learning. The rapid growth in the mobile and communication sector make it possible to develop new forms of education. M-learning means delivery of education by means of the mobile phone devices, PDAs and audio players. M-learners seek the lessons in the small format." Ref.: http://www.networktutorials.info/
HARDWARE:iPad, iPhone, Smartphone, Tablet PC
SOFTWARE: Operating Systems - iOS, Android, Windows Phone 7, BlackBerry, Chrome OS tablet, WebOS, MeeGo
Companies (Manufacturers): Apple, Google, Microsoft, Research in Motion (RIM) Mobile Services and Apps (Apple, Google, Microsoft): iOS, Android, BlackBerry, Windows Phone7
Ref.: www.agora.ro/conferinta/programatica-2011-mobile-services-and-apps
IBM PureSystems - sistemele de calcul noi de tip „sisteme expert integrate”.
- Design „Scale-In”: Integrează servere, sisteme de stocare şi reţele de calculatoare.IBM PureSystems - sistemele de calcul noi de tip „sisteme expert integrate”.
- Design „Scale-In”: Integrează servere, sisteme de stocare şi reţele de calculatoare.
- 1946: primul calculator electronic pe scara larga, de uz general, complet operational, ENIAC (Electronic Numerical Integrator and Calculator), finantat de armata SUA, utilizat la calculul tabelelor balistice de artilerie, proiectarea bombei cu hidrogen etc.; La 30 iunie 1945 se publica celebrul raport al lui John von Neumann intitulat First Draft of a Report on the EDVAC (EDVAC – Electronic Discrete Variable Automatic Computer), Moore School of Electrical Engineering, care continea 43 de pagini. John von Neumann – stralucit matematician – este atras inca din anul 1944 la proiectul ENIAC.
John von Neumann Page at Brown University
|
Ref.: http://www.brown.edu/Research/Istrail_Lab/pages/von_neumann.html John Von Neumann: The Scientific Genius Who Pioneered the Modern Computer, Game Theory, Nuclear Deterrence, and Much More. John von Neumann is widely regarded as the greatest scientist of the 20th century after Einstein. Born in Budapest in 1903, John von Neumann grew up in one of the most extraordinary of scientific communities. |
- 1949: calculatorul EDSAC (Electronic Delay Storage Automatic Computer) primul calculator electronic complet echipat, operational, cu programe memorate
- 1951: calculatorul UNIVAC I, primul calculator electronic comercial de mare succes, derivat din BINAC. Costa 250 000 $, s-au construit 48 de sisteme!
- 1952: primul calculator comercial IBM 701 Electronic Data Processing Machines
- 1957: CIFA 1 primul calculator romanesc, de la Bucuresti, realizat la Institutul de Fizica al Academiei, Magurele (ing. Victor Toma); Romania este a 8-a tara din lume care construieste un asemenea calculator si a doua dintre fostele tari socialiste, dupa fosta URSS [Draganescu]. Au urmat: CIFA-2 cu 800 de tuburi electronice (1959), CIFA-3 pentru Centrul de calcul al Universitatii din Bucuresti (1961), CIFA-4 (1962).
- 1961: calculatorul MECIPT - Masina Electronica de Calcul a Institutului Politehnic Timisoara; Aplicatii (calcule pentru rezistenta) realizate pe MECIPT-1 [Farcas] in perioada 1961-1964: proiectarea cupolei pavilionului expozitional Bucuresti, actual Romexpo (acad. D. Mateescu, programator ing. V. Baltac); proiectarea barajului Vidraru de pe Arges (18 zile in loc de 9 luni manual)
- 1963: DACICC calculator realizat de Institutului de Calcul al Academiei, Filiala Cluj-Napoca
Ref.: MAESTRI AI INGINERIEI CALCULATOARELOR (Lucian N. Vintan ), Universul ingineresc nr. 16/2007 - http://www.agir.ro
Pagină actualizată la 19 Aprilie 2012.