User Tools

Site Tools


teme:tema-2

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
teme:tema-2 [2015/12/02 23:07]
catalin.vasile3004 [void print_number(void *number)]
teme:tema-2 [2015/12/15 01:41]
razvan.deaconescu [Tema 2]
Line 1: Line 1:
 ====== Tema 2 ====== ====== Tema 2 ======
  
-* Deadline: ​Luni, 16.12.2015 23:55 +* Deadline ​SoftMiercuri, 16.12.2015 ​23:55 
-* Data publicării: ​2.12.2015, ​21:19 +* Deadline Hard: Miercuri, 6.01.2016 ​23:55 
-* Data ultimei modificări: ​2.12.2015, ​21:19+* Data publicării: ​3.12.2015, ​00:09 
 +* Data ultimei modificări: ​15.12.2015, ​01:40
 * iResponsabili:​ * iResponsabili:​
   * [[catalinvasile92@gmail.com|Cătălin Vasile]]   * [[catalinvasile92@gmail.com|Cătălin Vasile]]
Line 10: Line 11:
 ===== Enunț ===== ===== Enunț =====
 Să se implementeze un program în limbaj de asamblare care simulează calculator cu următoarele operaţii posibile: Să se implementeze un program în limbaj de asamblare care simulează calculator cu următoarele operaţii posibile:
-  * +’ (adunare) +  * ''​%%+%%'' ​(adunare) 
-  * *’ (înmulţire) +  * ''​%%*%%'' ​(înmulţire) 
-  * <<’ (shiftare la stânga) +  * ''​%%<<%%'' ​(shiftare la stânga) 
-  * >>’ (shiftare la dreapta)+  * ''​%%>>%%'' ​(shiftare la dreapta)
  
 Numerele sunt cu semn şi pot depăşii dimensiunea unui operand cu care poate lucra arhitectura folosită la laborator (i386). Numerele sunt cu semn şi pot depăşii dimensiunea unui operand cu care poate lucra arhitectura folosită la laborator (i386).
Line 66: Line 67:
 ./calc $A op $B ./calc $A op $B
 </​code>​ </​code>​
-**op** trebuie să fie între apostrofe, pentru că bash-ul încearcă să le interpreteze şi expandeze înainte să ajungă la programul vostru. De exemplu:+**op** trebuie să fie între apostrofe, pentru că bash-ul încearcă să îl interpreteze şi expandeze înainte să ajungă la programul vostru. De exemplu:
   * '<<'​ este văzut ca redirectarea cu concatenare   * '<<'​ este văzut ca redirectarea cu concatenare
   * '​*'​ este văzut ca un wildcard care se expandează la o enumerare cu fişierele din folderul curent.   * '​*'​ este văzut ca un wildcard care se expandează la o enumerare cu fişierele din folderul curent.
Line 82: Line 83:
  
 Temele vor trebui încărcate pe platforma [[https://​vmchecker.cs.pub.ro/​ui/#​IOCLA|vmchecker]] (în secțiunea IOCLA) și vor fi testate automat. Arhiva încărcată va fi o arhivă ''​.zip''​ care trebuie să conțină: Temele vor trebui încărcate pe platforma [[https://​vmchecker.cs.pub.ro/​ui/#​IOCLA|vmchecker]] (în secțiunea IOCLA) și vor fi testate automat. Arhiva încărcată va fi o arhivă ''​.zip''​ care trebuie să conțină:
-  * fișierul sursă ce conține implementarea temei, orice fisier ​de tip *.asm şi/sau *.inc+  * fișierele ​sursă ce conțin implementarea temei: ''​Makefile''​''​main.c'',​ ''​macro.c''​ și orice fișier ​de tip ''​.asm'' ​şi/​sau ​''​*.inc''​
   * fișier ''​README''​ ce conține descrierea implementării   * fișier ''​README''​ ce conține descrierea implementării
 +
 +<note tip>
 +În {{http://​elf.cs.pub.ro/​asm/​res/​teme/​iocla-tema2-resurse.zip|arhiva de resurse a temei}} puteți folosi fișierul ''​Makefile''​ pentru crearea arhivei care va fi încărcată pe [[https://​vmchecker.cs.pub.ro/​ui/#​IOCLA|vmchecker]] folosind comanda<​code>​
 +make pack
 +</​code>​
 +</​note>​
  
 Punctajul final acordat pe o temă este compus din: Punctajul final acordat pe o temă este compus din:
Line 104: Line 111:
  
 ===== Resurse ajutătoare ===== ===== Resurse ajutătoare =====
-  * [[laboratoare:​laborator-06|Laborator 6]]: vă ajută să vă faceţi o idee de cum sunt reprezentate numerele şi cum se pot face calcule complexe.+  * [[laboratoare:​laborator-06|Laborator 6]]: reprezentare numerică,calcule complexe 
 +  * [[laboratoare:​laborator-04#​breviarapelatul-in-cadrul-unei-functii|Laborator 4]]: apelarea unei funcţii, parametri pe stivă
   * Secţiunea de [[:​bune-practici|Bune practici]]: compilare, utilizarea funcțiilor din biblioteci pe diverse platforme, erori des întâlnite.   * Secţiunea de [[:​bune-practici|Bune practici]]: compilare, utilizarea funcțiilor din biblioteci pe diverse platforme, erori des întâlnite.
  
Line 115: Line 123:
   * **Dacă nu sunt respectate prevederile specificate la implementarea funcţiei do_operation() legate de implementarea algoritmilor de calcul, punctajul pe temă va fi anul complet.**   * **Dacă nu sunt respectate prevederile specificate la implementarea funcţiei do_operation() legate de implementarea algoritmilor de calcul, punctajul pe temă va fi anul complet.**
   * **Încălcarea oricărei prevederi menţionate în enunţ, sau în regulamentul materiei, va fi penalizată,​ CEL PUŢIN, cu anularea punctajului pe această temă, chiar dacă acestea au trecut un set de teste.**   * **Încălcarea oricărei prevederi menţionate în enunţ, sau în regulamentul materiei, va fi penalizată,​ CEL PUŢIN, cu anularea punctajului pe această temă, chiar dacă acestea au trecut un set de teste.**
-  * **Mimarea respectării prevederilor menţionate în enunţ şi din regulament vor avea aceleaşi penalizări ca nerespectarea lor. Cum exprimarea umană poate fi uneori ambiguă, vă recomandăm să ne puneţi întrebări pe forumul temei legate de aceste aspecte. Ne rezervăm dreptul asupra interpretării acestor prevederi.**+  * **Mimarea respectării prevederilor menţionate în enunţ şi/sau din regulament vor avea aceleaşi penalizări ca nerespectarea lor. Cum exprimarea umană poate fi uneori ambiguă, vă recomandăm să ne puneţi întrebări pe forumul temei legate de aceste aspecte. Ne rezervăm dreptul asupra interpretării acestor prevederi.**
  
 ===== Resurse ===== ===== Resurse =====
-Arhiva ce conține checker-ul(TODO), testele(TODO) ​și fișierele de la care puteți începe implementarea este {{:teme:iocla-tema2-resurse.zip|aici}}.+ 
 +Arhiva ce conține checker-ul, testele și fișierele de la care puteți începe implementarea este {{http://​elf.cs.pub.ro/​asm/​res/​teme/iocla-tema2-resurse.zip|aici}}.
teme/tema-2.txt · Last modified: 2015/12/19 15:39 by catalin.vasile3004