
    

    <?xml version="1.0" encoding="utf-8"?>
<!-- generator="FeedCreator 1.7.2-ppt DokuWiki" -->
<?xml-stylesheet href="http://ocw.cs.pub.ro/courses/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="http://ocw.cs.pub.ro/courses/feed.php">
        <title>CS Open CourseWare pclp2:laboratoare</title>
        <description></description>
        <link>http://ocw.cs.pub.ro/courses/</link>
        <image rdf:resource="http://ocw.cs.pub.ro/courses/lib/tpl/arctic/images/favicon.ico" />
       <dc:date>2026-04-05T08:41:18+03:00</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="http://ocw.cs.pub.ro/courses/pclp2/laboratoare/laborator-01?rev=1680781658&amp;do=diff"/>
                <rdf:li rdf:resource="http://ocw.cs.pub.ro/courses/pclp2/laboratoare/laborator-02?rev=1707414786&amp;do=diff"/>
                <rdf:li rdf:resource="http://ocw.cs.pub.ro/courses/pclp2/laboratoare/laborator-03?rev=1680781658&amp;do=diff"/>
                <rdf:li rdf:resource="http://ocw.cs.pub.ro/courses/pclp2/laboratoare/laborator-04?rev=1680781658&amp;do=diff"/>
                <rdf:li rdf:resource="http://ocw.cs.pub.ro/courses/pclp2/laboratoare/laborator-05?rev=1680781658&amp;do=diff"/>
                <rdf:li rdf:resource="http://ocw.cs.pub.ro/courses/pclp2/laboratoare/laborator-06-new?rev=1680781658&amp;do=diff"/>
                <rdf:li rdf:resource="http://ocw.cs.pub.ro/courses/pclp2/laboratoare/laborator-06-old?rev=1680781658&amp;do=diff"/>
                <rdf:li rdf:resource="http://ocw.cs.pub.ro/courses/pclp2/laboratoare/laborator-06?rev=1680781658&amp;do=diff"/>
                <rdf:li rdf:resource="http://ocw.cs.pub.ro/courses/pclp2/laboratoare/laborator-07?rev=1680781658&amp;do=diff"/>
                <rdf:li rdf:resource="http://ocw.cs.pub.ro/courses/pclp2/laboratoare/laborator-08?rev=1680781658&amp;do=diff"/>
                <rdf:li rdf:resource="http://ocw.cs.pub.ro/courses/pclp2/laboratoare/laborator-09?rev=1680781658&amp;do=diff"/>
                <rdf:li rdf:resource="http://ocw.cs.pub.ro/courses/pclp2/laboratoare/laborator-10?rev=1680781658&amp;do=diff"/>
                <rdf:li rdf:resource="http://ocw.cs.pub.ro/courses/pclp2/laboratoare/laborator-11?rev=1680781658&amp;do=diff"/>
                <rdf:li rdf:resource="http://ocw.cs.pub.ro/courses/pclp2/laboratoare/laborator-12?rev=1680781658&amp;do=diff"/>
                <rdf:li rdf:resource="http://ocw.cs.pub.ro/courses/pclp2/laboratoare/laborator-fp?rev=1680781658&amp;do=diff"/>
                <rdf:li rdf:resource="http://ocw.cs.pub.ro/courses/pclp2/laboratoare/start?rev=1680781658&amp;do=diff"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="http://ocw.cs.pub.ro/courses/lib/tpl/arctic/images/favicon.ico">
        <title>CS Open CourseWare</title>
        <link>http://ocw.cs.pub.ro/courses/</link>
        <url>http://ocw.cs.pub.ro/courses/lib/tpl/arctic/images/favicon.ico</url>
    </image>
    <item rdf:about="http://ocw.cs.pub.ro/courses/pclp2/laboratoare/laborator-01?rev=1680781658&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-04-06T14:47:38+03:00</dc:date>
        <title>Laborator 01: Reprezentarea numerelor, operații pe biți și lucru cu memoria</title>
        <link>http://ocw.cs.pub.ro/courses/pclp2/laboratoare/laborator-01?rev=1680781658&amp;do=diff</link>
        <description>Pentru reprezentarea informațiilor (instrucțiuni și date), calculatoarele folosesc sistemul binar (baza 2). În cazul scrierii programelor în limbaj de asamblare este preferat sistemul hexazecimal (baza 16), pentru că scutește programatorul de scrierea șirurilor lungi de 1 și 0, iar conversia din/în binar se poate face mult mai ușor decât în cazul sistemului zecimal (baza 10).</description>
    </item>
    <item rdf:about="http://ocw.cs.pub.ro/courses/pclp2/laboratoare/laborator-02?rev=1707414786&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-02-08T19:53:06+03:00</dc:date>
        <title>Laborator 02: Operații cu memoria. Introducere în GDB</title>
        <link>http://ocw.cs.pub.ro/courses/pclp2/laboratoare/laborator-02?rev=1707414786&amp;do=diff</link>
        <description>În acest laborator vom înțelege modul în care datele sunt organizate în memorie, noțiunea de pointer și modurile în care se poate interacționa cu memoria, felul în care pointerii sunt folosiți pentru a returna sau a modifica parametri în cadrul unei funcții, cât și noțiunea de pointer la o funcție și folosirea acestuia în situații necesare. De asemenea, laboratorul vizează introducerea într-un utilitar de analiză dinamică, și anume GDB.</description>
    </item>
    <item rdf:about="http://ocw.cs.pub.ro/courses/pclp2/laboratoare/laborator-03?rev=1680781658&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-04-06T14:47:38+03:00</dc:date>
        <title>Laborator 03: Compilare</title>
        <link>http://ocw.cs.pub.ro/courses/pclp2/laboratoare/laborator-03?rev=1680781658&amp;do=diff</link>
        <description>Etapele prin care trece un program scris în C din momentul în care este scris până când este rulat ca un proces sunt, in ordine:

	*  preprocesare
	*  compilare
	*  asamblare
	*  link editare

În imaginea de mai jos sunt reprezentate si detaliate aceste etape:</description>
    </item>
    <item rdf:about="http://ocw.cs.pub.ro/courses/pclp2/laboratoare/laborator-04?rev=1680781658&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-04-06T14:47:38+03:00</dc:date>
        <title>Laborator 04: Toolchain</title>
        <link>http://ocw.cs.pub.ro/courses/pclp2/laboratoare/laborator-04?rev=1680781658&amp;do=diff</link>
        <description>C basics: GOTOs

Un concept mai puțin abordat în tutoriale de C este instrucțiunea goto. Prin instrucțiunea goto, un program poate
sări în puncte intermediare în cadrul unei funcții. Aceste puncte intermediare se numesc label-uri (etichete).
Din punct de vedere al sintaxei, o eticheta consta dintr-un nume, urmat de caracterul :.</description>
    </item>
    <item rdf:about="http://ocw.cs.pub.ro/courses/pclp2/laboratoare/laborator-05?rev=1680781658&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-04-06T14:47:38+03:00</dc:date>
        <title>Laborator 05: Introducere în limbajul de asamblare</title>
        <link>http://ocw.cs.pub.ro/courses/pclp2/laboratoare/laborator-05?rev=1680781658&amp;do=diff</link>
        <description>În acest laborator, vom prezenta o parte din instrucțiunile x86, precum și o suită de exemple introductive.

Introducere

Înainte de a începe efectiv să învățăm să citim cod scris în limbaj de asamblare, iar apoi să scriem primele noastre programe, trebuie să răspundem la câteva întrebări.</description>
    </item>
    <item rdf:about="http://ocw.cs.pub.ro/courses/pclp2/laboratoare/laborator-06-new?rev=1680781658&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-04-06T14:47:38+03:00</dc:date>
        <title>Laborator 06: Analiza statică și dinamică a programelor. GDB</title>
        <link>http://ocw.cs.pub.ro/courses/pclp2/laboratoare/laborator-06-new?rev=1680781658&amp;do=diff</link>
        <description>În acest laborator vom studia modalitățile de analiză a programelor în scopul de a înțelege mai amănunțit modul lor de funcționare și pentru a găsi ușor cauzele unor probleme (debugging). Vom studia câteva utilitare de analiză, vom rezolva bug-uri, iar în final vom ști ce unelte și cum să le folosim pentru a dezvolta programe corecte și sigure.
Conținutul laboratorului alternează între secțiuni de tip tutorial, cu parcurgere pas cu pas și prezentarea soluției, și exerciții care trebuie să fie re…</description>
    </item>
    <item rdf:about="http://ocw.cs.pub.ro/courses/pclp2/laboratoare/laborator-06-old?rev=1680781658&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-04-06T14:47:38+03:00</dc:date>
        <title>Laborator 06: Apeluri de funcții</title>
        <link>http://ocw.cs.pub.ro/courses/pclp2/laboratoare/laborator-06-old?rev=1680781658&amp;do=diff</link>
        <description>În acest laborator vom prezenta modul în care se realizează apeluri de funcții. Vom vedea cum putem folosi instrucțiunile call și ret pentru a realiza apeluri de funcții și cum folosim stiva pentru a transmite parametrii unei funcții.

Laboratorul este de forma learn by doing, partea practică alternând între secțiuni de tip tutorial, cu parcurgere pas cu pas și prezentarea soluției, și exerciții care trebuie să fie rezolvate.</description>
    </item>
    <item rdf:about="http://ocw.cs.pub.ro/courses/pclp2/laboratoare/laborator-06?rev=1680781658&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-04-06T14:47:38+03:00</dc:date>
        <title>Laborator 06: Rolul registrelor, adresare directă și bazată</title>
        <link>http://ocw.cs.pub.ro/courses/pclp2/laboratoare/laborator-06?rev=1680781658&amp;do=diff</link>
        <description>În acest laborator vom aprofunda lucrul cu registre și modul în care se utilizează memoria atunci când programăm assembly pe un sistem x86 de 32 biți.

Registre

Registrele sunt principalele “unelte” cu care se scriu programele în limbaj de asamblare. Acestea sunt precum variabile construite în procesor. Utilizarea registrelor în locul adresării directe a memoriei face ca dezvoltarea și citirea programelor scrise în assembly să fie mai rapidă și mai ușoara. Singurul dezavantaj al programării în …</description>
    </item>
    <item rdf:about="http://ocw.cs.pub.ro/courses/pclp2/laboratoare/laborator-07?rev=1680781658&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-04-06T14:47:38+03:00</dc:date>
        <title>Laborator 07: Date Structurate. Structuri, vectori. Operatii pe siruri</title>
        <link>http://ocw.cs.pub.ro/courses/pclp2/laboratoare/laborator-07?rev=1680781658&amp;do=diff</link>
        <description>În acest laborator vom introduce noțiunea de structură din limbajul assembly și vom lucra cu operații specializate pe șiruri.

Structuri

Structurile sunt folosite pentru a grupa date care au tipuri diferite, dar care pot fi folosite împreună pentru a crea un tip compus.</description>
    </item>
    <item rdf:about="http://ocw.cs.pub.ro/courses/pclp2/laboratoare/laborator-08?rev=1680781658&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-04-06T14:47:38+03:00</dc:date>
        <title>Laborator 08: Lucrul cu stiva</title>
        <link>http://ocw.cs.pub.ro/courses/pclp2/laboratoare/laborator-08?rev=1680781658&amp;do=diff</link>
        <description>În acest laborator vom învăța cum este reprezentată stiva in limbajul de asamblare, care este utilitatea ei si cum se programeaza cu ajutorul acesteia.

Terminologie

In lumea algoritmicii, stiva este o structura de date abstracta prin intermediul careia se poate reprezenta informatie ce respecta regula “primul venit, ultimul servit”.</description>
    </item>
    <item rdf:about="http://ocw.cs.pub.ro/courses/pclp2/laboratoare/laborator-09?rev=1680781658&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-04-06T14:47:38+03:00</dc:date>
        <title>Laborator 09: Apeluri de funcții</title>
        <link>http://ocw.cs.pub.ro/courses/pclp2/laboratoare/laborator-09?rev=1680781658&amp;do=diff</link>
        <description>În acest laborator vom prezenta modul în care se realizează apeluri de funcții. Vom vedea cum putem folosi instrucțiunile call și ret pentru a realiza apeluri de funcții și cum folosim stiva pentru a transmite parametrii unei funcții.

Laboratorul este de forma learn by doing, partea practică alternând între secțiuni de tip tutorial, cu parcurgere pas cu pas și prezentarea soluției, și exerciții care trebuie să fie rezolvate.</description>
    </item>
    <item rdf:about="http://ocw.cs.pub.ro/courses/pclp2/laboratoare/laborator-10?rev=1680781658&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-04-06T14:47:38+03:00</dc:date>
        <title>Laborator 10: Interactiunea C-assembly</title>
        <link>http://ocw.cs.pub.ro/courses/pclp2/laboratoare/laborator-10?rev=1680781658&amp;do=diff</link>
        <description>Având în vedere că limbajul de asamblare prezintă dificultăți atât în citirea cât și în dezvoltarea codului, tendința generală este aceea de a se migra către limbaje de nivel înalt (care sunt mult mai ușor de citit și oferă un API mult mai ușor de utilizat). Cu toate acestea, tot există situații în care, din rațiuni de optimizare, se folosesc mici rutine assembly care sunt integrate în modulul limbajului de nivel inalt.</description>
    </item>
    <item rdf:about="http://ocw.cs.pub.ro/courses/pclp2/laboratoare/laborator-11?rev=1680781658&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-04-06T14:47:38+03:00</dc:date>
        <title>Laborator 11: Gestiunea bufferelor. Buffer overflow</title>
        <link>http://ocw.cs.pub.ro/courses/pclp2/laboratoare/laborator-11?rev=1680781658&amp;do=diff</link>
        <description>Acest laborator își propune prezentarea conceptului de buffere în C și limbaj de asamblare împreună cu operațiile specifice acestora,
dar și vulnerabilitățile pe care acestea le au și cum pot ele să fie exploatate de un potențial atacator prin folosirea unui program
cu scopul de a ataca un sistem sau de a obține informații la care în mod normal nu ar avea acces.</description>
    </item>
    <item rdf:about="http://ocw.cs.pub.ro/courses/pclp2/laboratoare/laborator-12?rev=1680781658&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-04-06T14:47:38+03:00</dc:date>
        <title>Laborator 12: CTF</title>
        <link>http://ocw.cs.pub.ro/courses/pclp2/laboratoare/laborator-12?rev=1680781658&amp;do=diff</link>
        <description>În acest laborator veți interacționa cu majoritatea noțiunilor prezentate pe parcursul semestrului prin intermediul unor taskuri de tip Capture-The-Flag. Acestea vor testa înțelegerea și stăpânirea metodelor și toolurilor specifice de analiză statică și dinamică, înțelegerea procesului de compilare, a limbajului de asamblare - sintaxă, regiștri, lucru cu memoria, funcții - dar și capacitatea de identificare și exploatare a unor vulnerabilități simple de tip buffer overflow.…</description>
    </item>
    <item rdf:about="http://ocw.cs.pub.ro/courses/pclp2/laboratoare/laborator-fp?rev=1680781658&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-04-06T14:47:38+03:00</dc:date>
        <title>Laborator extra: Virgulă mobilă</title>
        <link>http://ocw.cs.pub.ro/courses/pclp2/laboratoare/laborator-fp?rev=1680781658&amp;do=diff</link>
        <description>Până acum, pe parcursul laboratorului de IOCLA am învățat despre cum putem efectua operații cu numere întregi, pozitive sau negative, de diverse dimensiuni. Dar cum rămâne cu numerele cu virgulă? Multe din procesoarele folosite astăzi dispun de o unitate de calcul în virgulă mobilă (Floating Point Unit - FPU), care oferă funcții de calcul pentru astfel de valori.</description>
    </item>
    <item rdf:about="http://ocw.cs.pub.ro/courses/pclp2/laboratoare/start?rev=1680781658&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-04-06T14:47:38+03:00</dc:date>
        <title>Laboratoare</title>
        <link>http://ocw.cs.pub.ro/courses/pclp2/laboratoare/start?rev=1680781658&amp;do=diff</link>
        <description>laboratoare index</description>
    </item>
</rdf:RDF>
