User Tools

Site Tools


teme:tema-1

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
teme:tema-1 [2015/11/14 16:00]
ionel.ghita [Precizări suplimentare]
teme:tema-1 [2015/11/30 01:51] (current)
razvan.deaconescu [Tema 1]
Line 1: Line 1:
 ====== Tema 1 ====== ====== Tema 1 ======
 +
 +* Deadline: Luni, 30.11.2015 23:55
 +* Data publicării:​ 16.11.2015, 18:56
 +* Data ultimei modificări:​ 30.11.2015, 01:50
 +* Responsabili:​
 +  * [[valighita92@gmail.com|Vali Ghiță]]
 +  * [[vladimir.diaconescu@cs.pub.ro|Vladimir Diaconescu]]
  
 ===== Enunț ===== ===== Enunț =====
Line 17: Line 24:
 </​code>​ </​code>​
  
-Acest fișier se va numi **input.inc** și trebuie să fie inclus în fișierul sursă ce conține implementarea temei, în secțiunea de date (imediat după section .data). Găsiți în arhiva cu resursele temei un fișier de la care puteți începe implementarea.+Acest fișier se va numi **input.inc** și trebuie să fie inclus în fișierul sursă ce conține implementarea temei, în secțiunea de date (imediat după section .data). Găsiți în [[tema-1#​resurse|arhiva cu resursele temei]] un fișier de la care puteți începe implementarea.
  
 Programul trebuie să afișeze pe o singură linie numărul obținut sub forma unui șir de caractere. În cazul în care baza nu este una validă, se va afișa mesajul “Baza incorecta”. Programul trebuie să afișeze pe o singură linie numărul obținut sub forma unui șir de caractere. În cazul în care baza nu este una validă, se va afișa mesajul “Baza incorecta”.
Line 23: Line 30:
  
 ===== Testare ===== ===== Testare =====
-Tema poate fi testată pe platforma vmchecker sau local folosind checker-ul din arhiva cu resursele temei.+Tema poate fi testată pe platforma vmchecker sau local folosind checker-ul din [[tema-1#​resurse|arhiva cu resursele temei]].
  
 Arhiva conține o serie de fișiere de intrare în directorul **inputs** și fișiere ce conțin rezultatele așteptate pentru fiecare test, în directorul **outputs**. Verificarea acestor teste este făcută automat de către checker. Arhiva conține o serie de fișiere de intrare în directorul **inputs** și fișiere ce conțin rezultatele așteptate pentru fiecare test, în directorul **outputs**. Verificarea acestor teste este făcută automat de către checker.
Line 31: Line 38:
  
 ===== Trimitere și notare ===== ===== Trimitere și notare =====
-Temele vor trebui încărcate pe platforma vmchecker (în secțiunea IOCLA) și vor fi testate automat. Arhiva încărcată trebuie să conțină:​ + 
-  * fișierul sursă ce conține implementarea temei, denumit ​**tema1.asm** +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șier README ce conține descrierea implementării+  * fișierul sursă ce conține implementarea temei, denumit ​''​tema1.asm''​ 
 +  * fișier ​''​README'' ​ce conține descrierea implementării
  
 Punctajul final acordat pe o temă este compus din: Punctajul final acordat pe o temă este compus din:
Line 44: Line 52:
   * fișier README - 10%   * fișier README - 10%
  
-Temele care nu trec de procesul de asamblare (build) nu vor fi luate în considerare.+Temele care nu trec de procesul de asamblare (//build//) nu vor fi luate în considerare.
  
 +<​note>​
 +Mașina virtuală folosită pentru testarea temelor de casă pe vmchecker este descrisă în secțiunea [[:​utile#​masini-virtuale|Mașini virtuale]] din pagina de resurse.
 +</​note>​
 ===== Precizări suplimentare ===== ===== Precizări suplimentare =====
  
   * Dacă folosiți SASM pe Windows, pentru a putea testa va trebui să puneți fișierul ce conține inputul, input.inc, în directorul include care se află în directorul în care este instalat SASM (de exemplu C:\Program Files (x86)\SASM\include).   * Dacă folosiți SASM pe Windows, pentru a putea testa va trebui să puneți fișierul ce conține inputul, input.inc, în directorul include care se află în directorul în care este instalat SASM (de exemplu C:\Program Files (x86)\SASM\include).
   * Metodele de conversie din baza 10 în altă bază sunt prezentate în laboratorul 1.   * Metodele de conversie din baza 10 în altă bază sunt prezentate în laboratorul 1.
-  * Pentru afișarea unui caracter trebuie să folosiți funcția putchar din biblioteca standard C sau macro-ul PRINT_CHAR din SASM (găsiți aici mai multe detalii).+  * Pentru afișarea unui caracter ​din rezultat ​trebuie să folosiți funcția ​''​putchar'' ​din biblioteca standard C sau macro-ul PRINT_CHAR din SASM (găsiți ​[[https://​dman95.github.io/​SASM/​english.html|aici]] mai multe detalii). 
 +  * Puteți folosi funcții precum ''​printf''​ sau ''​puts''​ pentru afișarea oricăror alte informații (mai puțin caracterele ce compun un număr convertit).
   * Împărțirea cu rest se poate efectua folosind instrucțiunea div, care funcționează astfel conform tabelului de mai jos:   * Împărțirea cu rest se poate efectua folosind instrucțiunea div, care funcționează astfel conform tabelului de mai jos:
  
Line 70: Line 82:
  * **div BH** împarte valoarea din AL:AH (AX) la valoarea din BH și stochează câtul în AL și restul în AH.  * **div BH** împarte valoarea din AL:AH (AX) la valoarea din BH și stochează câtul în AL și restul în AH.
  
-===== Resurse ==== +===== Resurse ​===== 
- + 
 +Arhiva ce conține checker-ul, testele și fișierul de la care puteți începe implementarea este {{http://​elf.cs.pub.ro/​asm/​res/​teme/​iocla-tema1-resurse.zip|aici}}.
teme/tema-1.1447509608.txt.gz · Last modified: 2015/11/14 16:00 by ionel.ghita