Chris
Vizitator
|
|
« : Aprilie 30, 2005, 21:09:43 » |
|
Hi! Ce ziceti de un articol despre programarea in limbaj de asamblare ? Ma gandesc sa explic umpic cum "lucreaza" microprocesorul (registri, flaguri, acces la memorie), cateva instructiuni 80x86, transcrierea structurilor de baza din C/Pascal in asamblare si eventual unul-doua programe demonstrative + mici optimizari (si compararea timpilor de executie: pure C/Pascal vs ASM!). Dupa parerea mea ar fi un articol util, ar face sa inteleaga pe cei care nu stiu asm ce se ascunde sub liniile de cod C/Pascal si sa le optimizeze - in unele concursuri chiar daca nu ai complexitatea optima poti scoate un punctaj frumos cu asamblarea rescriind in asm o functie care se executa de multe ori!
|
|
|
Memorat
|
|
|
|
•wickedman
|
|
« Răspunde #1 : Aprilie 30, 2005, 21:20:27 » |
|
Da! Ar fi interesant. Spune-mi te rog care e userId-ul tău ca să-ţi setez permisiunile necesare.
|
|
|
Memorat
|
|
|
|
Chris
Vizitator
|
|
« Răspunde #2 : Aprilie 30, 2005, 22:08:58 » |
|
Wow! Ce rapid mi-ai raspuns Id-ul meu pe devnet e : chris_11
|
|
|
Memorat
|
|
|
|
•wickedman
|
|
« Răspunde #3 : Mai 01, 2005, 08:46:18 » |
|
Ai capatat permisiuni sa propui articole. (Sectiunea Articole > Scrie un nou articol). Daca ai nevoie de ajutor, baga intrebari aici.
Cand credem cu totii ca e gata il publicam.
Have fun!
|
|
|
Memorat
|
|
|
|
Chris
Vizitator
|
|
« Răspunde #4 : Mai 01, 2005, 12:13:37 » |
|
1) Cum inserez imagini in articol ? Am folosit buttonul ala de insert image si trimit calea catre imagine (calea de pe calculatorul meu), dar daca dau imprima articol nu mi-o afiseaza. 2) Exista vreo limita la dimensiunea articolului ?
|
|
|
Memorat
|
|
|
|
|
valar2006
Vizitator
|
|
« Răspunde #6 : August 12, 2005, 22:53:30 » |
|
*cenzurat*
|
|
« Ultima modificare: Mai 06, 2006, 18:45:15 de către domino »
|
Memorat
|
|
|
|
cristi8
Vizitator
|
|
« Răspunde #7 : Septembrie 08, 2005, 11:06:13 » |
|
..cand e gata articolul ?
|
|
|
Memorat
|
|
|
|
Chris
Vizitator
|
|
« Răspunde #8 : Septembrie 08, 2005, 13:06:30 » |
|
Buna intrebare )) E aproape gata, mai trebuie inserata o imagine.
|
|
|
Memorat
|
|
|
|
•vladcyb1
|
|
« Răspunde #9 : Septembrie 09, 2005, 09:48:04 » |
|
Acum am inteles si eu ce asamblarea asta, dar parca este interzisa la concursuri,nu? Adica daca imi aduc aminte pe la USACO cand am citit regulile parca scria ceva de asamblare, cred ca o interziceau . De exemplu la ONI daca te prinde cu asa ceva nu te descalifica sau ceva de genul?
|
|
|
Memorat
|
Vlad Berteanu
|
|
|
Chris
Vizitator
|
|
« Răspunde #10 : Septembrie 09, 2005, 10:35:05 » |
|
Sa-l citez pe Silviu ... Multe concursuri importante (IOI, CEOI, etc) prevad in regulament faptul ca este interzisa utilizarea limbajului de ansamblare. Articolul e bun in ideea de cultura generala si nu ca modalitate de optimizare in concursuri.
|
|
|
Memorat
|
|
|
|
cristi8
Vizitator
|
|
« Răspunde #11 : Septembrie 09, 2005, 12:18:21 » |
|
chiar.. de ce interzic in concursuri asa ceva
|
|
|
Memorat
|
|
|
|
•silviug
|
|
« Răspunde #12 : Mai 06, 2006, 13:37:51 » |
|
Nu stiu exact.. pot emite niste ipoteze: 1. Nu stie toata lumea ASM si nu ar fi fair-play; Olimpiadele urmaresc mai ales designul la nivel de algoritmi si mai putin la nivel de optimizare de cod; 2. (Probabil) ai avea mai multe posibilitati sa faci prostii cu codul tau fara sa fii prins. Stiu putin ASM (nici nu stiu daca pot scrie un bubble sort ) dar imi imaginez ca poti face chestii relativ dubioase si destul de mascate pentru un evaluator automat. Silviu
|
|
|
Memorat
|
"Don't gain the world and lose your soul, wisdom is better than silver or gold." [Bob Marley - Jamaican reggae musician & singer (1945 - 1981)]
|
|
|
•greco
|
|
« Răspunde #13 : Mai 06, 2006, 14:41:22 » |
|
1. Olimpiada de informatica este (desi lumea nu realizeaza prea bine lucrul asta) un concurs de algoritmi, nu de programare. Trebuie incurajata cat mai mult gandirea, nu implementarea. 2. O persoana foloseste ASM => algoritmii ne-optimi ruleaza mult mai rapid si se incadreaza in timp => limitele de timp sunt scazute pentru ca se se evite aceasta situatie => toata lumea e obligata sa invete ASM => ne indepartam si mai mult de semnificatia olimpiadei de Informatica (repet, nu de programare, ci de Informatica = Computer Science).
|
|
|
Memorat
|
Jump in the cockpit and start up the engines Remove all the wheelblocks there's no time to waste Gathering speed as we head down the runway Gotta get airborne before it's too late.
|
|
|
•silviug
|
|
« Răspunde #14 : Mai 07, 2006, 22:33:42 » |
|
Computer Science nu inseamna doar "Informatica" (aka Algoritmi). E drept, include si domeniul acesta dar la fel de bine putem pune si Limbajele de programare si compilatoarele in CS. Asta, asa, ca o observatie offtopic Silviu
|
|
|
Memorat
|
"Don't gain the world and lose your soul, wisdom is better than silver or gold." [Bob Marley - Jamaican reggae musician & singer (1945 - 1981)]
|
|
|
•toni2007
|
|
« Răspunde #15 : Iunie 10, 2008, 12:55:43 » |
|
Am si eu o intrebare cum poti face sa citesti din fisiere in limbajul assembler? sau o transcriere pentru a+b: #include <stdio.h> main(){ int a,b; freopen("adunare.in","r",stdin); freopen("adunare.out","w",stdout); scanf("%d%d",&a,&b); printf("%d",a+b); }
|
|
« Ultima modificare: August 05, 2008, 22:37:20 de către Pripoae Teodor Anton »
|
Memorat
|
|
|
|
•Marius
|
|
« Răspunde #16 : Decembrie 21, 2008, 14:24:58 » |
|
Am si eu o intrebare cum poti face sa citesti din fisiere in limbajul assembler? sau o transcriere pentru a+b: #include <stdio.h> main(){ int a,b; freopen("adunare.in","r",stdin); freopen("adunare.out","w",stdout); scanf("%d%d",&a,&b); printf("%d",a+b); }
Destul de greu. Pentru a afisa a + b trebuie sa afisezi cifra cu cifra numarul, pentru ca nu poti decat sa afisezi caractere prin codul lor ASCII. La citire vei scrie un program la fel de lung ca programul tau care rezolva problema.
|
|
|
Memorat
|
Faceti lucrurile simplu: pe cat de simplu posibil, dar nu mai simplu.
|
|
|
|
|