PCPROG.1

20 Sep 1991 - 03 Dec 1992

Topics

  1. ms.dos (235)
  2. cccc (0)
  3. asembler (321)
  4. pascal (896)
  5. clipper (1059)
  6. zastita (239)
  7. basic (178)
  8. baze.podataka (116)
  9. novi.fajlovi (66)
  10. algoritmi (52)
  11. razno (707)
  12. van.teme (126)
  13. unknown (986)

Messages - unknown

unknown.625 bearboy, -> #619, ppekovic
˙¨:> ekstenzijom OVL, ili kod OS/2 DLL, ... DLL se vidi i kod Udovice, a ima ga i kod Odyssey-a (X-Y-Z Modemi su u jednom DLL-u, pa koji zatreba...)
unknown.626 todorp, -> #624, djelovic
> iza decimalnog mesta (.00), onda mozes da jednostavno ispises broj > bez zareza u string, sa strlen izracunar njegovu duzinu, i onda > krenes pa ubacujes zareze na odgovarajuda mesta (do_kraja%3 == 0). Pa ideja nije losa.Ja sam to resio tako sto broj delim u petlji sa ldiv(broj,pow10(broj dec. mesta)*broj dec. mesta,pa to oduzmem od broja i ispred razlike dopisem , .Nadao sam se da moze mnogo lakse,ipak HVALA!! Pozdrav od Todora.
unknown.627 garderp,
Sezamovci Programeri, Posto se mnogo vise bavim Windowsima nego DOS-om, molio bih da mi neko kaze kako da saznam koji je karater na odredjenoj poziciji na ekranu (u tekst modu) zajedno sa njegovim atributima. Ta glupost mi treba iz prostog razloga sto kad opalim neki dajalog boks preko ekrana kad ga izbrisem onda se brise i ono preko cega je postavljen dajalog boks. U windowsima to je lako reseno jer je dajalog boks prirodna stvar ovog operativnog sistema. Dakle, samo funkcija tipa unsigned StaJeNaXY(int x,int y) Predrag [za Arape]
unknown.628 todorp, -> #627, garderp
A zasto deo pre ispisivanja novog prozora na prekopiras u memoriju sa komandom gettext i posle samo vratis umesto prozora koji brises? Pozdrav od Todora.
unknown.629 mjova, -> #627, garderp
> boks prirodna stvar ovog operativnog sistema. Dakle, samo > funkcija tipa unsigned StaJeNaXY(int x,int y) najjednostavnije je preko (HelpPC 2.10): INT 10,8 - Read Character and Attribute at Cursor Position AH = 08 BH = display page on return: AH = attribute of character (alpha modes only) AL = character at cursor position mada možeš i direktno, ako izračunaš adresu aktivne video strane, pa onda dodaš X*Y*2 na to. pročitaš prvi byte, to je slovo, a drugi je atribut. ovo možeš da pogledaš u izvornom kodu koji sam ostavio ovde u temi pod imenom windows.arj (valjda ;), ali ako ti nije potrebna rezolucija veća od 25 redova, onda se sve može srediti i standardnim fn koje idu uz bc. (imaju bug, pa ne radi sa više od 25 redova). SY
unknown.630 todorp,
Hi! Ima li neko fajl ct.lib iz Turbo C-a 2.0? Imam c0t.obj ali sam ovaj nekako izgubio :)). Pozdrav od Todora. ps.Bio bih mu veoma zahvalan kao bi fajl okačio u mail.
unknown.631 mjova, -> #630, todorp
> Ima li neko fajl ct.lib iz Turbo C-a 2.0? jel to šala ili misliš ozbiljno? ako misliš ozbiljno, onda ti moram reći da nisi izgubio ništa jer biblioteka za t model nije odvojena, tj. ista je kao i za s model pa nemaš sekiracije. razlika je samo u linkovanju. SY
unknown.632 todorp, -> #631, mjova
> ako mislis ozbiljno, onda ti moram reci da nisi izgubio nista jer > biblioteka za t model nije odvojena, tj. ista je kao i za s model pa > nemas sekiracije. razlika je samo u linkovanju. Pa ja sam i bez tog fajla dosada linkovao .com fajlove sa: tlink /t /x \lib\c0t ime.obj,ime.com,,\lib\cs medjutim pozajmim ja od Klapa knjigu Turbo C/C++ The Complete Reference od Herberta Schildta (mislim da i ti imas tu knjigu;) i tamo na 366. strani pise da postoji i ct.lib.Koliko sam ja video nigde se ne pominje da je ct.lib ukinut i da je predvidjeno drugacije linkovanje. Pozdrav od Todora.
unknown.634 dnikolic, -> #621, jtitov
>> Tacno, a da li je neko ima? Pa valjda je jtitov ima, ko bi drugi?!?!? :)) dn
unknown.635 mornar,
Ima li u nekoj grupi za C/C++ mesta, ili bi morao da otvorim nbovu grupu ? mornar
unknown.636 jtitov, -> #635, mornar
> Ima li u nekoj grupi za C/C++ mesta, ili bi morao da > otvorim nbovu grupu ? A sta ce ti grupa kad imas celu konferenciju? Bez veze. Ako mislis na razmenu software-a, opet bez veze, jer su svi kompajleri abnormalno veliki da bi se slali preko Sezama... A tvoja pitanja/potraznja mogu biti zanimljivi svima koji prate ovu konferenciju.
unknown.637 robert, -> #635, mornar
<:> Ima li u nekoj grupi za C/C++ mesta, ili bi morao da otvorim nbovu <:> grupu ? Što neko u temi clipper reče šta će ti grupa kad imaš konferenciju :)) a i ona mi je ovih dana (nedelja) malo presahnula... Robert. P.S. Nema ljutiš... !?
unknown.638 todorp,
Kako u Turbo C-u da mu kazem da sve sto treba da ide na screen da ide na lpt1 ili lpt2? U jednoj knjizi pise da moze ali nigde ne pise kako :(( biosprint mi nista neznaci.Dakle treba mi nesto trajno (relativno) da posle mogu jednostavno puts("hjhj") da bacim na printer. Pozdrav od Todora.
unknown.639 janko,
Probao sam BC++ 3.0 -- samo DOS verziju. - Iako piše da je po cfront 2.1 standardu, već i BC 3.0 ima podršku templejtima (koji su glavna fora cfronta 3.0, i stvarno značajno olakšavaju i unapređuju C++ programiranje) - U 3.0 više ne postoje verzije prevodilaca koje rade bez slobodne extended memorije. Dakle, imamo samo BCC umesto ranijeg BCCX-a, i samo BC umesto BCX-a. Zaključak: treba vam bar 2 MB memorije u mašini! - Nasuprot nekim tvrdnjama, BC++ 3.0 sasvim fino radi sa QEMM-om i ostalim dragim nam čudima. Problem je što je BC-u treba puna 2 MB za početak. Integrisana okolina je prespora i u ta 2 MB -- svapuje ko blesava već za program od dve hiljade linija. Linijski prevodilac BCC takođe svapuje ko blesav, ako damo kešu makar i 200 K nauštrb svih 2 MB. Ukratko: za BC++ 3.0 vam treba mašina sa VIŠE od 2 MB, ako ne želite da popijete po kafu u za vreme svakog prevođenja. - Nisu napravili samo BC i BCC da moraju da rade sa extended memorijom, već, začudo, i MAKE, LINK i CPP. Svaki od njih mora da inicijalizuje svoju podršku za extended memoriju itd. što dalje dovodi do zaključka da vam treba i a) pristojno brz disk (bar 17 ms) b) prostojno brza mašina (bar 386/25) c) još memorije za disk keš od bar 2-3 MB. - Do sada nisam pomenuo. Minimalna DOS konfiguracija, bez bilo kakvih dodataka, je malo jače od 8 MB. Od toga 2,5 MB ode na on-lajn help fajl, koji je sjajan, ali u njemu su i informacije o Windows delu i CLASSLIB f-jama (tj. da nisu i to da nabili u taj fajl, bio bi primetno manji) (CLASSLIB fje nisu deo standardne biblioteke, već paket rutina koji dobijate kao neku upotrebljivu demonstraciju C++-a). ko želite da imate još štošta od pratećih stvari, odoše novi megabajti... Puna DOS konfiguracija je 30-tak MB, kažu (nisam probao). Dakle, zaključak: za BC 3.0 -- i to samo DOS verziju, vam treba disk od BAR 80 MB i to brz (vidi gore). - 'Bag' na koji sam naleteo radeći sa 2.0 (ono da ne ugrađuje implicitno kopiranje objekta što sadrže druge objekte) ovde je otklonjen. - BC++ 3.0 je prvi koji ima više optimizacija od TC 2.0 (sve prethodnee su imale isti, izuzetno mali broj optimizacija). Ipak, i pored svega, MSC 5.0 iz '87 ume da BOLJE optimizuje suvi C kod, od ovog supermodernog čuda iz '91. Napr. poređenje dx registra sa 65535 BC prevodi kao 'CMP dx,65535' ali MSC 5.0 kaže 'INC dx.' Pametan mali. Usput, BC++ za 'register' promenljive NIKAD ne koristi više od dva registra: SI i DI! Zaključak: iako u minimalnoj konfiguraciji ne zauzima puno više od 2.0, 3.0 je daleko zahtevniji. Generalno gledano, ako imate slabiju mašinu od 386/25 sa min 4MB (preporučujem: 8 ili više), brzim diskom od min 80 MB, opasno ćete se napatiti... Filozofski minimum je 286 sa 2 MB memorije i 9 MB slobodnih na hard disku, ali, to je samo za mazohiste! (Usput, da bi ste izveli ovo, instalaciju BC++ na ovakav 'knap' prostor, morate da koristite program CA2ZIP koji sam ja svojevremeno napisao, i može se naći negde u Sezamovim konferencijama). Ako pišete suve C programe, i nemate jaku mašinu, OSTANITE na 2.0 (ili, možda, osvrnite se na MSC <=6.0, ako ne koristite sjajnu integrisanu okolinu koju ima BC 2.0, a potrebna vam je optimizacija koja 'vadi creva'). Ako pišete C++ programe za DOS... verovatno ćete morati da pojačate mašinu, (ako dosad niste) ako hoćete da ostanete u trendu. Po najavama, BC++ 3.1 je cfront 3.0 kompatibilan. A BC++ 3.1 sigurno nije milosrdniji od BC++ 3.0. Ako pišete Windows programe, znači da već imate bar 386/33, 8MB, VGA i 120MB HD, pa za vas nema krize. O Windows aspektu trojke je zz napisao članak u nekim od poslednjih Računara, koji ste, onda, već odavno pročitali...
unknown.640 mjova, -> #638, todorp
> Kako u Turbo C-u da mu kazem da sve sto treba da ide na > screen da ide na lpt1 ili lpt2? obično radim ovako: fprintf(stdprn, "hjhj"); SY
unknown.641 floyd, -> #640, mjova
­-> obicno radim ovako: ­-> fprintf(stdprn, "hjhj"); Da li je moguca redirekcija u stilu DOS-a? Nesto kao: ....... stampanje; /* procedura koja izbacuje podatke na ekran */ stampanje >prn; /* isto sto i gore, samo na stampac */ stampanje >imedat.eks; /* isto sto i gore, samo u datoteku */ .......
unknown.642 todorp, -> #640, mjova
> fprintf(stdprn, "hjhj"); Hvala,ali znao sam za to.Meni treba nesto sto ce stvarno da promeni standard out.Posto znam da imas knjigu Turbo C/C++ od Herberta Schildta,molim te pogledaj 207. i 208-u stranu.Pise: It is possible to redirect the console I/O to other devices.For simplicity of discussion,however,it is assumed that the console will be the device used since it is the most common. Ali nepise kako,sem ako se pod tim ne podrazumeva fprintf i biosprint :(( Ja sam problem resio sa fprintf(stdout,"ghhh"); a po potrebi ubacim ispred #define stdout stdprn. Glupo je da jedan jezik kao C (ako stvarno nemoze) ne daje mogucnost da mu zamenim ekran sa lpt. Pozdrav od Todora. ps.Ipak HVALA!
unknown.643 mornar,
Jel' bi mogao ovde neko da napise funkciju za C koja bi vrsila konverziju heksadecimalnog i decimalnog broja u binarni oblik dugacak 16 bitova(ili 32). Hvala unapred. Mornar
unknown.644 djelovic, -> #641, floyd
> stampanje; /* procedura koja izbacuje podatk > stampanje >prn; /* isto sto i gore, samo na stamp > stampanje >imedat.eks; /* isto sto i gore, samo u datote Redirekcija konzole na štampač vrši se u C-u sa: int handle=dup(fileno(stdout)); dup2(fileno(stdprn),fileno(stdout)); ... // ovde ubaci svoje procedure dup2(handle,fileno(stdout)); Naravno, ovde možete umesto stdprn ubaciti bilo koji FILE*, a moguće je čak spawn-ovati drugi program sa ovakvom redirekcijom, što je mnogo efikasnije od dosadašnjeg korišćenja COMMAND.COM-a za ovakve stvari.
unknown.646 djelovic, -> #643, mornar
> Jel' bi mogao ovde neko da napise funkciju za C koja bi vrsila > konverziju heksadecimalnog i decimalnog broja u binarni oblik dugacak 16 > ili 32 bita. int i = broj; char s Š80Ć; char *q = s; while (i) š *q++ = (i & 1 ? '1' : '0'); i >>= 1; ć *q = 0; strrev (s); Brojeve iz decimalnog i hexdecimalnog stringa možeš dobiti funkcijom sscanf.
unknown.648 mornar, -> #646, djelovic
Hvala puno ! Mornar.
unknown.649 zvonko, -> #563, pjankovic
># Posjedujem CODE BASE 4.2. Reci sta te interesuje pa da ># pokusam da ti odgovorim. Na koliko i kakvih disketa staje, odnosno koliko stranica ima uputstvo ;) zvonko
unknown.650 todorp, -> #644, djelovic
> Naravno, ovde mozete umesto stdprn ubaciti bilo koji FILE*, a > moguce je cak spawn-ovati drugi program sa ovakvom redire;c─joml │ÎRĽüj Hvala!!! To mi je trebalo. Pozdrav od Todora.
unknown.651 robert, -> #643, mornar
<:> heksadecimalnog i decimalnog broja u binarni oblik dugacak 16 <:> bitova(ili 32). Za ovaj program je sve jedno da li je broj hex ili dec... #include <stdio.h> void itobin (char *, unsigned int); void main () { char bin[17]; unsigned int broj; printf ("Unesi broj: "); scanf ("%d", &broj); itobin (bin, broj); printf ("\n\nBroj %u je binarno %s\n", broj, bin); } void itobin (char *niz, unsigned int b) { int i; unsigned int maska = 1; for (i = 0; i < 16; ++i) { niz[15-i] = '0' + ((b & maska) >> i); maska <<= 1; } niz[i] = '\0'; } Pozdrav, Robert.
unknown.652 mjova, -> #642, todorp
> Ja sam problem resio sa fprintf(stdout,"ghhh"); a po > potrebi ubacim ispred #define stdout stdprn. > Glupo je da jedan jezik kao C (ako stvarno nemoze) ne daje > mogucnost da mu zamenim ekran sa lpt. pa može, ali ne baš tako kako si ti zamislio ;) u dosu postoje neki 'zamišljeni' fajlovi (oni to zovu 'device'), a ti ih možeš koristiti po svojoj volji. takavi su npr 'NUL', 'AUX', 'CON' i 'PRN'. njihova imena možeš da koristiš u fopen() sasvim ravnopravno. pitanje je da li ti tako nešto treba jer postoje stdin, stdout... pa ti predlažem nešto ovako: void print(FILE *strout) { ..... fprintf(strout, "adasda"); ..... } void main(void) { int out= 0; // uvek na ekran po definiciji ....... if(!out) print(stdout); // štampanje na ekran: else print(stdprn); // štampanje na štampač: ....... } tek kao primer osnovne ideje. možeš 'strout' da deklarišeš kao globalnu promenljivu pa da iz programa samo promeniš njenu vrednost nepozivajući print() sa parametrom... SY
unknown.653 k.sasa,
Mali savet za sve D-DFLAT programere. Sa MS LINKEROM obavezno ukljuciti /ST:XXXX opciju (za stek) gde je XXXX broj bajtova (npr /ST:2048). Ovo je potrebno jer u suprotnom dolazi do neuhvatljivih gresaka u programu, posebno ako se koristi i help sistem. Pozdrav, B&S!
unknown.654 robert, -> #651, robert
Da... kad malo bolje pogledam, može i bolje... ;)))) Robert.
unknown.655 todorp, -> #652, mjova
Hvala na lepom resenju! Pozdrav od Todora.
unknown.656 dnikolic, -> #627, garderp
>> molio bih da mi neko kaze kako da saznam koji je karater >> na odredjenoj poziciji na ekranu (u tekst modu) zajedno >> sa njegovim atributima. Ta glupost mi treba iz prostog Sto rece todor, imas funkciju gettext koja ti pokupi deo ekrana u bafer. Ako ti bas treba citanje karaktera, imas funkciju 8 interapta 10h koja upravo to radi. U BH moras imati video stranu, AH broj funkcije (8), a u izlazu AL sadrzi ASCII kod karaktera, a AH njegov atribut. dn
unknown.657 bulaja,
**** new file **** \ibmpc\c **** arr-v110.arj LARGE, VIRTUAL AND HUGH ARRAYS Version 1.1 by Graham Robertson The software enclosed has three parts. 1. Large Arrays (Arrays up to the size memory allows) Procedures are written in machine code to allow the use of large arrays in a C program. The array can be of any size as long as memory permits. 2. Virtual Arrays and Hugh Arrays (Arrays up to the size of your DISK or VDISK) Procedures which include the code from part one but allow many large arrays to be accessed. If there is no space left then old arrays will cached to the disk or a virtual disk. Several virtual arrays can be used to create one hugh array of any size. This restricted version limits the number of virtual arrays to sixteen. 3. Version 1.1 of this software also allows your extended memory to be accessed directly for this system.
unknown.658 pjankovic, -> #649, zvonko
>># Posjedujem CODE BASE 4.2. Reci sta te interesuje pa da >># pokusam da ti odgovorim. > Na koliko i kakvih disketa staje, odnosno koliko stranica > ima uputstvo ;) Staje na dvije diskete od 1,2Mb. Uputstvo ima 300 stranica. Pozdrav :)
unknown.659 todorp,
Hi! Koristim Turbo C 2.0 i naisao sam na zanimljiost.Jel' moze neko da mi objasni kako je moguce da naredba getdfree i getfat ne rade isto??!! u sledecim slucajevima: struct fatinfo p; getfat(4,&p); total =(UL)p.fi_sclus*(UL)p.fi_nclus*(UL)p.fi_bysec; Ovaj posle odredjenog kapaciteta lupa gluposti (poznat vam je moj program df).Preko odre- djenog kapaciteta ipisuje za sve 4Gb. i struct dfree p; getdfree(4,&p); total=(UL)p.df_total * (UL)p.df_bsec * (UL)p.df_sclus; Pozdrav od Todora. ps.UL je unsigned long.
unknown.660 mjova, -> #659, todorp
> Ovaj posle odredjenog kapaciteta lupa gluposti > (poznat vam je moj program df).Preko odre- > djenog kapaciteta ipisuje za sve 4Gb. Šta da ti kažem, imaš izvorni kod fds-a ;), pa pogledaj ja se time slušim i nema nikakvih problema, bar ne za sada... Da li si nekim operacijama nad brojem dobio preveliku vrednost? možda se radi o tome da ako diska nema (onda je jedna od vrednosti -1) ispiše unsigned long (-1) (to bi trebalo da bude onih 4Gb)? Ko zna? ono fi_sclus (pišem napamet, proveri) treba ispitati da li je 0xffff (tj -1) pa onda ako nije raditi dalje... ako hoćeš, pošalji mi source u priv poštu da pogledam... SY
unknown.661 robert, -> #659, todorp
<:> Koristim Turbo C 2.0 i naisao sam na zanimljiost.Jel' moze neko da <:> mi objasni kako je moguce da naredba getdfree i getfat ne rade <:> isto??!! u sledecim Evo kako su obe strukture definisane: struct fatinfo { char fi_sclus; /* sectors per cluster */ char fi_fatid; /* FAT id byte */ int fi_nclus; /* number of clusters */ int fi_bysec; /* bytes per cluster */ }; struct dfree { unsigned int df_avail; /* available clusters */ unsigned int df_total; /* total clustrs */ unsigned int df_bsec; /* bytes per sector */ unsigned int sclus; /* sectors per cluster*/ }; E sad, kod većih diskova možda promenljive u strukturi fatinfo ne mogu da prihvate date veličine ili rutina getfat() postavlja neke vrednosti u slučaju pojave greške (o tome međutim, ništa ne piše u helpu dok za getdfree() piše da se negde vraća 0xfff ili nešto tako u slučaju greške). Trebalo bi se oko toga malo igrati u trace modu pa videti šta se upisuje gde i u kom slučaju.
unknown.662 todorp, -> #660, mjova
Stvar je u tome sto bi ona dva primera morala na istoj particiji isto da rade, (zar ne?) a oni ne rade. > Da li si nekim operacijama nad brojem dobio preveliku vrednost? Pa sta to znaci prevelika vrednost.Prevelika bi bila vrednost od jedno 10 cifara (posto je long) a to nikako nisam mogao da dobijem. Pozdrav od Todora. ps.Ono za source,obrisao sam bagovitu zivotinju u afektu.Procackacu malo sa undelete pa ako uspem da ga izvucem saljem ti na mail.Bio sam dovoljno glup da obrisem i prethodne verzije iz confa :(
unknown.663 todorp, -> #661, robert
> u slucaju greske). Trebalo bi se oko toga malo igrati u trace modu > pa videti sta se upisuje gde i u kom slucaju. Pa igrao sam se sa debugerom i lupao je gluposti a, ja nisam hteo da preterano ulazim u problematiku TC-a.Znam samo da cu izbegavati getfat gde god mogu. A ono o razlikama u strukturi ne razumem sta ce im int kad nemoze da bude ni jedan broj vezan za disk negativan (sto nije unsigned?).Znaci opet glupost. > char fi_sclus; /* sectors per cluster */ Sta ce ovde char? Pozdrav od Todora.
unknown.664 obren, -> #663, todorp
> Pa igrao sam se sa debugerom i lupao je gluposti a, ja nisam hteo da > preterano ulazim u problematiku TC-a. U fi_sclus je u slučaju nepostojećeg diska vrednost -1 (nema u helpu, ali mogao si i probom da provališ da si malo bolje pogledao "gluposti" ;)). Kada se -1 castuje u unsigned pa pomnoži za drugim članovima fatinfo strukture, (koji su u tom slučaju neodređeni) dobijaju se vesele vrednosti, odnosno oni diskovi sa poželjnim kapacitetom... :))) > Znam samo da cu izbegavati getfat gde god mogu. Ma lupi HELP IGNORE GETFAT i gledaj posla, kad ne ume da napiše ni pošten resume u helpu, pa treba da pogađaš ko je, šta je i kako radi... ;)
unknown.665 todorp, -> #664, obren
> U fi_sclus je u slucaju nepostojeceg diska vrednost -1 (nema u helpu, > mogao si i probom da provalis da si malo bolje pogledao "gluposti" ;)). > se -1 castuje u unsigned pa pomnozi za drugim clanovima fatinfo struktur > (koji su u tom slucaju neodredeni) dobijaju se vesele vrednosti, odnosno Ili ja tebe nisam razumeo ili ti mene.Kako je nepostojeci disk kad ta ista particija kad se smanji radi program a ako je vise od oko 70mb neradi, a getdfat radi? Pozdrav od Todora. E je* ga posto kucam on line gore nije getfat nego getdfree.
unknown.666 obren, -> #665, todorp
> Ili ja tebe nisam razumeo ili ti mene.Kako je nepostojeci disk kad > ta ista particija kad se smanji radi program a ako je vise od oko > 70mb neradi, a getdfat radi? Izgleda ja tebe - mislio sam da te izluđivalo što dobijaš velike brojeve za nepostojeće diskove, pa sam pogledao malo po literaturi šta može da bude uzrok. Ne pominju se eventualni problemi sa particijama koje postoje, a u principu tu se samo poziva odgovarajuća DOS-ova funkcija, i tu (valjda) ne bi trebalo da ima bagova (?).
unknown.667 ilazarevic,
Može jedno početničko pitanje? Može... Daklem: Koja je razlika između signed i unsigned promenljivih?
unknown.668 glisin, -> #667, ilazarevic
ŢŢŢKoja je razlika između signed i unsigned promenljivih? U vrednostima koje se mogu staviti unutra. Signed oblik koristi zapis broja u potpunom komplementu, tako da se mogu pakovati i pozitivni i negativni, dok unsigned to tretira kao niz bitova sa vrednostima od nula pa dalje. Da ne detaljišem oko zapisa brojeva u binarnom sistemu, ono što ti treba je sledeće: unsigned signed ────────┼────────────────┼───────────────────────── char │ 0...255 │ -128...127 short │ 0...65535 │ -32768...32767 long │ 0...4294967296 │ -2147483648...2147483647 ────────┴────────────────┴───────────────────────── Primeti da NEMA int-a u tabeli. To je zato što je "int" jednak ili short ili long, zavisi od mašine. Recimo, na 16-bitnim mašinama je obično int=short, dok se kod 32-bitnih pravi tako da je int=long, da bi po bio što srodniji organizaciji samog procesora. Preporučujem da koristiš baš short i long a izbegavaš int ako te interesuje portabilnost a radiš nešto sa bitovima ili pointerima i takvim varijablama. U ostalim slučajevima nema veze. Opaska: Slične stvari postoje i u drugim jezicima. Na primer u MODULI-2 je tip CARDINAL baš ono što je u C-u unsigned (0...) a u Pascalu toga nema, ali se može napraviti CARDINAL (0..32767 doduše) ako se stavi TYPE cardinal = 0..MAXINT; a takođe i TYPE byte = 0..255; što je ekvivalentno C-ovom typedef unsigned char byte; Eto. Nadam se da sam bio dovoljno informativan. Ako nešto još zapne, pitaj pa da objašnjavamo. Inače, moja objašnjenja se baziraju na STANDARDIMA jezika. Zato i kažem da Pascal nema unsigned, iako Turbo ima, jer po Wirth-u nema, dakle nema i tačka. :-))) ŢŢŢIGGYŮŮŮ
unknown.669 janko, -> #667, ilazarevic
> Koja je razlika između signed i unsigned promenljivih? Pitanje je više vezano za osnove računarstva, a ne C kao jezik. Signed imaju znak a unsigned ne. :) Kodovanje signed ne mora da bude u drugom komplementu, zavisi od mašine, ali obično jeste. Na 80X86 procesorima jeste. Drugi komplement je kodovanje tako da je 65535 == -1, 65534 == -2 itd. Pozitivni brojevi su 0..32767. Ovo pričam za int (na dos C-ovima je int 16 bita). Slično važi i za char, koji je 8 bita, i za long (32). Uzmi malo eksperimentiši i sve će ti biti jasno.
unknown.670 ilazarevic, -> #668, glisin
█ Eto. Nadam se da sam bio dovoljno informativan. Ako nešto još zapne, █ pitaj pa da objašnjavamo. Inače, moja objašnjenja se baziraju na █ STANDARDIMA jezika. Hvala, bilo je divno :) Mene baš interesuju standardi, posle je lako popunjavati rupe...
unknown.671 ilazarevic,
Hvala i gliši i janku na objašnjenjima.
unknown.672 rogi,
Ukoliko neko poseduje datoteku "commdlg.h" molio bih ga da mi se javi na mailH povodom iste. Rogi
unknown.673 ciki,
Ho! Posto sam tek poceo da radim u C-u,imam jedno pitanjce. Da li je moguce procitati poziciju na disku odgovarajuceg programa i kako? Pozdrav Ciki!
unknown.674 d.petrovic,
Početničko pitanje ! Možda nekom bude čudno, ali... Treba da napravim jedno kratko programče koje treba da ima štampa jedan obrazac i još par sitnica. Ja sam do sad piskarao samo po Clipper-u (bilo bi smešno da program koji tako malo stvari radi bude dug cca 300 K), a sa engleskim se salbo snalazim pa bih bio presrećan da mi neka dobra duša napiše par reči o C-u (to je vama < 5 min). Daklem: 1. Kako da preusmerim izlaz na štampač ? 2. Kako da odštampam nešto u koloni 5 na ekranu, a da ne obrišem znake u kolonama 0-4 ? 3. Kako da još par podataka smestim u fajl na disku i odatle ih učitavam (ovo nije neophodno, ako je komlikovano za početnika u C-u)? Hi! P.S. Ako je bitno imam Borlandov TC 1.0 ! Uz svaku upotrebljenu funkciju molim napomenu gde se nalazi, t.j. koji heder fajl povezati.
unknown.675 janko, -> #674, d.petrovic
> P.S. Ako je bitno imam Borlandov TC 1.0 ! Pređi na TC 2.01 i nabavi :) samo TSR help iz paketa Borland C++ 2.0. To ti je najbolja kombinacija. TC 2.01 je najbrži u prevođenju, a help iz BC 2.0 daje najviše informacija. Probaj -- i broj pitanja će ti se naglo smanjiti... onda se ponovo javi...
unknown.676 mjova, -> #673, ciki
> Da li je moguce procitati poziciju na disku odgovarajuceg > programa i kako? kakvu poziciju? čak i da sam te dobro razumeo, to nema potrebe raditi. program (neki com ili exe) možeš da otvoriš funkcijom fopen() ili nekom koja radi sličnu stvar. možda absread() i abswrite() rade ono što te zanima, ali nisam siguran baš 100% jer njima ne određuješlokaciju programa već čitaš odeređeno mesto na disku. e, sad, što se tiče lociranja nekog programa za rad sa ove dve funkcije nisam upućen jer mi to nikad nije bilo potrebno jer sve probleme rešavam sa fopen().
unknown.677 mjova, -> #674, d.petrovic
> 1. Kako da preusmerim izlaz na štampač ? pogledaj poruku pc.prog:6.642 i odgovore na nju. > 2. Kako da odštampam nešto u koloni 5 na ekranu, a da ne > obrišem znake u kolonama 0-4 ? probaj sa putch(), cprintf() i ostalim sličnim fn. naravno, koristi gotoxy(), wherex(), wherey()... > P.S. Ako je bitno imam Borlandov TC 1.0 ! nije preterano bitno, ali predlažem ti BC++ 2.0, i biblioteke iz 3.0. verzija 2.0 ima prednosti kad se pri prevođenju koriste ranije prevedena zaglavlja. time se dosta ubrzava prevođenje C++ koda. SY
unknown.678 rogi,
Postovane kolege, Ponovo se javljam povodom meni tako neophodne datoteke "commdlg.h". Da bih Vam osvezio pamcenje objasnicu sta je u toj datoteci. Od BETA verzije Windows 3.1 distibuira se fajl COMMDLG.DLL koji sadrzi odredjeni skup dijaloga za otvaranje, zatvaranje i stampanje datoteka. Posto pose- dujem BC++ v3.0 u njemu se ne nalazi include datoteka commdlg.h a i sami zante kako sada stoje stvari sa upgradeom. Molio bih nekog ako poseduje tu datoteku da mi se javi na mail. A evo i jednog korisnog dokumenta. U fajlu se nalaze Microsoftova objasnjenja kako kreirati status bar u aplikaciji pod Windowsima. Ince izasao je Paradox Engine 3.0. Te infor- macije cu kasnije poslati. Jos nesto, sta bi sa grupom windows.2 nkbog obeca nesto. Pozdrav, Rogi stabar.zip
unknown.679 rogi,
Evo i informacija o Paradox Engine 3.0 i nekim drugim novim borlandovim proizvodima. a.zip
unknown.680 garderp, -> #679, rogi
Da li si ti nešto već radio u paradox-u 2.0 ili samo nosiš vesti? Predrag (za Arape)
unknown.681 micko, -> #679, rogi
Zdravo, Da li kosristis samo Engine ili i Paradox kao relacionu bazu? Ajde da se dogovoriomo pa da svi oni koji koriste Pareadox u bilo kojoj verziji ili varijanti osnujemo grupu za razmenu svega (iskustava, znanja, softvera itd.) Codor
unknown.682 ppekovic, -> #681, micko
>> Ajde da se dogovoriomo pa da svi oni koji koriste Pareadox u >> bilo kojoj verziji ili varijanti osnujemo grupu za razmenu >> svega (iskustava, znanja, softvera itd.) Šta će vam grupa kad imate ovu konferenciju. Paya
unknown.683 ciki, -> #676, mjova
>>kakvu poziciju? čak i da sam te dobro razumeo, to nema potrebe >>raditi.... Ovako. Vec sam rekao da sam apsolutni pocetnik u C-u. To bi trebalo da radi nesto slicno pctools-u(Znas ono kada gledas mapu diska, pa ti on kaze tu i tu se nalazi taj i taj prg...) P.S. Nisam se javljao od 31.8. pa zato izvini na sadasnjem odgovoru. Pozdrav Ciki!
unknown.684 mjova, -> #683, ciki
> To bi trebalo da radi nesto slicno pctools-u(Znas ono kada > gledas mapu diska, pa ti on kaze tu i tu se nalazi taj i > taj prg...) e, to je druga priča. to bi trebalo pogledati u nekoj knjižici o dos-u ili po helpovima. FAT bi trebalo da sadrži sve inforamcije koje te zanimaju, pa pokušaj da proučiš njegovu strukturu. nisam nikad imao potrebu da radim tako nešto, pa ti više ne mogu reći.
unknown.685 obren, -> #683, ciki
> To bi trebalo da radi nesto slicno pctools-u(Znas ono kada gledas > mapu diska, pa ti on kaze tu i tu se nalazi taj i taj prg...) I meni je jednom trebao metod za nalaženje početnog klastera ali nigde nisam mogao da nađem. Našao sam "obrazac" za putovanje, ali za njega treba da se zna početni klaster. E, onda sam pitao na Mića BBS-u i Vasa (vasic) mi je iskopao, valjda iz HelpPC-a da se početni klaster može naći u FCB-u (File Control Block). E tu postoji problem, jer je taj podatak na raznim ofsetima kod DOS-a 2.x, kod DOS-a 3.x i kod 3.x kada je startovan SHARE. Posle sam odustao od toga, ali ako baš hoćeš probaj da se zezaš sa FCB-om. Uostalom, ko sada koristi DOS 2.0? Ostaje ti samo da prepoznaš da li je startovan SHARE, pa imaš samo dve varijante. Aj, pa javi šta si uradio, detalje imaš u HelpPC-ju.
unknown.686 robert,
Evo za sve one koji počinju da se bave ili koji žele da počnu da se bave C-om nekoliko malih funkcija uklopljenih u dva demo programa. Kao što samo ime arhive kaže koriste se pozivi BIOS-u u svrhu čitanja tastature i njenog statusa i u svrhu kontrole ekrana i kursora. Sve u svemu ništa spektakularno ali kome treba da se uči možda će dobo doći. Arhiva sadrži i jedan PROžITAJ.ME fajl u kome sve lepo piše. Pozdrav. P.S. Oni iskusniji programeri ovo ne moraju da skidaju jer sve to već odavno znaju. :)) (žisto da ne bude posle lupanja šakom o čelo... ;)) biosdemo.arj
unknown.687 dejanr,
NOVOSTI/bix 5.25 je zapravo prikaz (beta verzija) Microsoft C-a 7.0 koja će izaći/je izašla u septembarskom broju BYTE-a. BTW, u sledećim "Računarima" (oktobar) takođe sledi prikaz ovoga paketa, srećom ne kasnimo mnogo za BYTE-om :)
unknown.688 zvonko, -> #687, dejanr
># ># BTW, u sledećim "Računarima" (oktobar) takođe sledi ># prikaz ovoga paketa, srećom ne kasnimo mnogo za BYTE-om ># :) Još samo da obezbedite diskete i štampanu dokumentaciju :>>>
unknown.689 dejanr, -> #688, zvonko
>> > BTW, u sledećim "Računarima" (oktobar) takođe sledi >> > prikaz ovoga paketa, srećom ne kasnimo mnogo za BYTE-om >> > :) >> >> Još samo da obezbedite diskete i štampanu dokumentaciju :>>> Nije mi baš jasno šta si ovim hteo da kažeš, ali prikaz je "naš", tj. paket (original) je, zahvaljujući "Jogodati", obezbeđen, kao i uvek kada se radi prikaz.
unknown.690 d.petrovic,
Jel zna neko kako da pročitam serijski broj diska (adresa) ? Ima li tako nešto matična ploča ?
unknown.691 d.petrovic,
Možda je pitanje čudno, ali ja sam početnik u C-u! Znam da to može i na lakši način, ali ja sam tvrdoglav i hoću to na kraći. Problem je sa zastavicama u printf() i fprintf() funkcijama. Daklem kako: fprintf(out," 1, 2,..., 9,10,11); (Videli ste ? Bitan je razmak ispred 1-9) da napišem u petlji, tj, kako da postavim format ispisa: for(br=1;br<=30;++br) fprintf(out,"%u........",br); Ajde nek se nađe dobra duša koju ne mrzi ovo da mi napiše, ja se s tim mlatio skoro ceo sat :(((( Hi
unknown.692 ppekovic, -> #691, d.petrovic
>> Znam da to može i na lakši način, ali ja sam tvrdoglav i >> hoću to na kraći. Problem je sa zastavicama u printf() i >> fprintf() funkcijama. Daklem kako: fprintf(out," 1, 2,..., >> 9,10,11); >> (Videli ste ? Bitan je razmak ispred 1-9) >> da napišem u petlji, tj, kako da postavim format ispisa: >> for(br=1;br<=30;++br) >> fprintf(out,"%u........",br); Uh, evo treći put čitam ovo što si napisao i nije mi baš jasno šta si želeo da postigneš. Ajde probaj da objasniš bolje. Paya
unknown.693 prvul, -> #692, ppekovic
Ů>> (Videli ste ? Bitan je razmak ispred 1-9) Ů>> da napišem u petlji, tj, kako da postavim format ispisa: Ů Uh, evo treći put čitam ovo što si napisao i nije mi baš jasno šta si želeo Ů▄▄ Mislim da hoće da postigne ovo: for(br=1;br<=30;++br) fprintf(out,"%2u,",br); Odn. hoće da ima brojeve ispisane tako da svaki broj zauzme isti broj karaktera, u ovom slučaju 2.
unknown.694 mjova, -> #690, d.petrovic
> Ima li tako nešto matična ploča ? nema, ali možeš pročitati SN biosa (nesigurno) ili chksum (još bolje)..
unknown.695 zzivotic, -> #691, d.petrovic
> fprintf(out," 1, 2,..., 9,10,11); > (Videli ste ? Bitan je razmak ispred 1-9) > da napišem u petlji, tj, kako da postavim format ispisa: > for(br=1;br<=30;++br) > fprintf(out,"%u........",br); fprintf(out,"%2u",br); Jel to? Pozdrav, zz
unknown.696 d.petrovic, -> #692, ppekovic
> Uh, evo treći put čitam ovo što si napisao i nije mi baš > jasno šta si želeo da postigneš. Ajde probaj da objasniš > bolje. Odgovorio ti je i prvul, al' pošto si pokazao dobru volju da pomogneš dužan sam i ja. Trebalo mi je: fprintf(out,"%2u",br); a ja sam sve vreme pokušavao (kad kupujem loše napisane knjige ;)): fprintf(out,"%u 2",br); fprintf(out,"%u2",br); fprintf(out,"%u%2",br); i još puuuno, puno kombinacija, bolje reći sve osim prave :(((
unknown.697 nboskovic, -> #690, d.petrovic
*> Ima li tako nešto matična ploča ? Možda ima procesor zapisano negde na nekoj adresi u sebi? (c) klap nikola
unknown.698 janko, -> #697, nboskovic
> Možda ima procesor zapisano negde na nekoj adresi > u sebi? Serijski broj SVAKOG mikroprocesora? To bi bilo SKUUUUPO da ne možeš da zamisliš koliko. Naravno, ne postoji...
unknown.699 glisin, -> #691, d.petrovic
ŢŢŢAjde nek se nađe dobra duša koju ne mrzi ovo da mi napiše, ŢŢŢja se s tim mlatio skoro ceo sat :(((( Videh da ti je Prvul odgovorio... nego, vidi se da ne koristiš prave knjige. To tamo piše. Pišem ovu poruku da ti skrenem pažnju na nekoliko formata koji se najčešće koriste. Neka je x = 123: printf (" >%d< ", x); Izlaz: >123< printf (" >%5d< ", x); Izlaz: > 123< (ono što si tražio) printf (" >%-5d< ", x); Izlaz: >123 < printf (" >%05d< ", x); Izlaz: >00123< Isto važi za ostale tipove (%u, %s, %c...). Ima još mnogo kerefeka sa izlazom, posebni za %f i %e, ali ovo je najkorisnije i najčešće. Oblik '%0nt' je naročito zgodan kada imaš HEX brojeve. Ako ti je h = 0xE1C na primer, a hoćeš da to liči na 32-bitni broj, dakle da ima pun format, kažeš: printf (" %08X ", h); Izlaz: 00000E1C printf (" %08x ", h); Izlaz: 00000e1c Prosto k'o pasulj! ŢŢŢIGGYŮŮŮ
unknown.700 todorp, -> #690, d.petrovic
> Jel zna neko kako da procitam serijski broj diska (adresa) ? > Ima li tako nesto maticna ploca ? Za serijski broj diska ti treba dos veci od 4-ke. Evo ti ovo ali neznam koliko ce ti pomoci: INT 21,69 - Get/Set Disk Serial Number (Undocumented DOS 4+) AH = 69h AL = 00 get serial number = 01 set serial number BL = drive (0 = default, 1=A:, 2 = B:, ... ) DS:DX = buffer to contain extended BIOS Parameter Block (BPB, AL=0) = disk information to set of the form: Offset Size Description 00 word info level (zero) 02 dword disk serial number (binary) 06 11bytes volume label or "NO NAME " if not present 11 8bytes filesystem type string "FAT12 " or "FAT16 " returns: CF = set on error AX = error code if CF set = 01 network drive not supported = 05 no extended BPB found on disk CF = clear if successful and value in AX is destroyed AL = 00 buffer filled from Extended BPB on disk = 01 disk Extended BPB updated from buffer DS:DX = pointer to returned data, when AL = 0 - copies data from Extended BIOS Parameter Block to buffer - no critical error is generated on error - does not work on network drives (returns 01) - returned buffer (after offset 2) is similar to offsets 27 through 3D of the Extended BPB found in the boot record Za maticnu plocu mislim da nema resenja. Pozdrav od Todora.
unknown.701 korvin,
Gospodo, uskoro zaplovljavam u vitaminske (C ) vode, interesuje me kakvo je vaše uvaženo, koji C da uzmem ? Vredi li preći na objektno prg. ?
unknown.702 mornar, -> #701, korvin
Preporucujem ti neki od Borlandovih C kompajlere, jer su brzi i vrlo efikasni i sa najmanje bug-ova. Sto se tice obj. prog. iako ga neces odma koristiti ( shvatiti ), vredi imati njegovu podrsku. Preporucujme Borland C++ v2.0 ili v3.0 pozdrav.
unknown.703 d.petrovic,
Nikako da ukapiram kako C prenosi vrednosti funkcijama :(( Pitanje : Kako da kad hoću da ispišem liniju u fajlu prenesem pokazivač na fajl, tj. ! Na ekranu bi to bilo : main š lin(20); ć lin(du) š int br; for(br=1;br<=du;++br) printf("-"); ć ali....., sa fajlovima to ne radi jer treba preneti i pokazivač na fajl ! Ja probao, ali ovo ne ide ! main š FILE *out; out=fopen("PROBA.TXT","wt"); fprintf(out,"TestiranjeĐn"); lin(out,20); fclose(out); ć lin(out,du) š int br; for(br=1;br<=du;++br) fprintf(out,"-"); ć Kako to u stvari treba, treba da skratim program za ¸200 linija kad prenesem parametar drugoj funkciji !? Hi
unknown.704 ppekovic, -> #702, mornar
>> Preporucujem ti neki od Borlandovih C kompajlere, jer su brzi i vrlo >> efikasni i sa najmanje bug-ova. Sto se tice obj. prog. iako ga neces odma ++++++++++++++++ Najmanje bug-ova u poredjenju sa kojim kompajlerima? Pored Borlandovih kompajlera, tu su i Microsoft C 6.0 i C 7.0. Ovaj drugi je objektno orijentisani, ali kao i noviji Borlandovi kompajleri jede mesto na disku. Paya
unknown.705 d.petrovic, -> #697, nboskovic
> Možda ima procesor zapisano negde na nekoj adresi > u sebi? Ne verujem. Možda ima matična ploča, ali mene je u stvari interesovalo sa koje adrese pročitati broj Hard diska. Pozdrav, Dejan
unknown.706 d.petrovic, -> #698, janko
> Serijski broj SVAKOG mikroprocesora? To bi bilo SKUUUUPO > da ne možeš da zamisliš koliko. Naravno, ne postoji... E, postoje. Sad baš ne bih da dokazujem, ali pročitao sam to negde i naravno ne odnosi se na SVAKI, ti se valjda posebno naručuju i bla,bla...
unknown.707 d.petrovic, -> #699, glisin
> Prosto k'o pasulj! Naravno da je prosto kad znaš, ali mišta se ne brini, krećem ja polako sa komplikovanijim pitanjima.:) Pozdrav, Dejan
unknown.708 janko, -> #702, mornar
> Preporucujme Borland C++ v2.0 ili v3.0 Ako imaš velike diskove, a ovaj drugi i ako imaš bar 4M memorije. Ako nemaš nameru da se objektuješ, dovoljan ti je Turbo C 2.01. Mali je, sladak, brži i od naslednika (jasno je zašto). Jedino ima slabiji help od Borland 2.0 i 3.0. Preporučujem help iz BC 2.0.
unknown.709 janko, -> #703, d.petrovic
> main š > FILE *out; > lin(out,20); >ć > lin(out,du) š >ć Za početak: nabavi knjigu koja opisuje ANSI C. Ti pišeš po K&R C-u koji može opasno da te zbunjuje i nadalje. ANSI C te tera da daklarišeš funkcije i parametre pošteno, pa verovatno se ne bi zbunio ovako. Kratak odgovor: void lin(FILE* out, du ) š ... ć
unknown.710 janko, -> #706, d.petrovic
> E, postoje. Sad baš ne bih da dokazujem, ali pročitao sam > to negde i naravno ne odnosi se na SVAKI, ti se valjda > posebno naručuju i bla,bla... Prvi put čujem. Ukratko, za svaki mp. sa različitim brojem morale bi da se prave nove maske, prema kojima se nagriza silicujumska podloga, rade dopiranja i ostvaruju električni spojevi, što je skupo ne zna se. Ako nađeš to, citiraj, da i ja nešto saznam...
unknown.711 dragisha, -> #701, korvin
ű> Gospodo, uskoro zaplovljavam u vitaminske (C ) vode, ű> interesuje me kakvo je vaše uvaženo, koji C da uzmem ? Vredi ű> li preći na objektno prg. ? Nisi ti toliko loš pa da zaslužiš C:). Bolje se preispitaj... dragisha
unknown.712 dragisha, -> #710, janko
ű> Prvi put čujem. Ukratko, za svaki mp. sa različitim brojem ű> morale bi da se prave nove maske, prema kojima se nagriza ű> silicujumska podloga, rade dopiranja i ostvaruju električni ű> spojevi, što je skupo ne zna se. A može se napraviti i jedinstvenom maskom sa naknadnim ubacivanjem ser.br. spaljivanjem visokim naponom pojedinih veza u posebnom dijelu mp kao što se radi u PROM-ovima. dragisha
unknown.713 mjova, -> #701, korvin
> Gospodo, uskoro zaplovljavam u vitaminske (C ) vode, > interesuje me kakvo je vaše uvaženo, koji C da uzmem ? > Vredi li preći na objektno prg. ? pa da bi prešao na objektno programiranje prvo bi trebalo da naučiš C. kako je C++ zaista moćan u svim pravcima, preporučujem ti borland kao start. ver 2.0.
unknown.714 glisin, -> #708, janko
ŢŢŢAko nemaš nameru da se objektuješ, dovoljan ti je Turbo C 2.01. Jasno, ja radim sa 2.01. Jako solidno. TC++ su prenapučeni! ŢŢŢPreporučujem help iz BC 2.0. Vidi ti ovo! Nemoj reći da može da se stavi HELP iz BC2.0 u direktorijum sa TC2.0 i da ga ovaj vidi bez problema? Jel to to? ŢŢŢIGGYŮŮŮ
unknown.715 glisin, -> #710, janko
ŢŢŢUkratko, za svaki mp. sa različitim brojem morale bi da se prave ŢŢŢnove maske... He, he... pa većina mikroprocesora ima serijski broj, samo što je to BAŠ BROJ koji je nanet u završnoj fazi kod kontaktnog sloja. Maske se ne rade ponovo jer se za VLSI obično elektronskim snopom iscrtavju sve maske po Waferu, tako da je ser.br. lako promeniti. Inače, on se stavlja na čip zbog vizuelne kontrole i eventualnog odbacivanja serije, etc... E sada C: sledi da iz C-a, pa ni iz bilo kog jezika, nije moguće takav broj pročitati jer on veze sa elektronikom nema. Jedini način da se vidi je da slomiš pakovanje i da ga tražiš pod lupom na samom čipu. Uostalom, pogledaj neku sliku mikroprocesora i lako se negde uz ivicu nađe nešto poput DXFG527365HJI... to je to. Naravno, nije isključeno ni da se u nekim slučajevima serijski broj unosi kao neki registar (i to je lako promeniti, opet samo završna faza), ali ja za takve procesore nisam čuo. Ako ih ima, to bi se već dalo nekako softverski i pročitati. ŢŢŢIGGYŮŮŮ
unknown.716 d.petrovic, -> #710, janko
> Ako nađeš to, citiraj, da i ja nešto saznam... Ufffffff, jedva nađoh ;( Dr Jozo J. Dujmović Programski jezici i metode programiranja (zašto li sam ja ovo uopšte kupio;() Naučna Knjiga ISBN 86-23-20169-8 Poglavlje 3.6 Pravni i ekonomski aspekti Strana 3.102, Zadnji pasus .....mogu neovlašteno iskopirati, proizvođači softvera redovno pokušavaju da svoj softver zaštite od toga, pa pored pravne zaštite putem "copyright"-a koriste i druge razne..... .....sastoji se u tome da se serijski broj procesora koji je utisnut u odgovarajući ROM prilikom fabrikacije procesora (i koji se može programski očitati) dostavi proizvođaču softvera koji zatim taj broj upisuje (najčešće kriptografisano) u program..... E, sad, knjiga nije orijentisana na XT/AT, pa pitanje je da li to imaju 80x86 procesori, a pitanje je i odakle autoru knjige podaci;) Pozdrav, Dejan
unknown.717 d.petrovic, -> #709, janko
> Za početak: nabavi knjigu koja opisuje ANSI C. Ti pišeš po > K&R Prporuči mi neku, baš počinje da me interesuje C. > void lin(FILE* out, du ) > š > ... >ć Ovo ne radi :(( Znači ja sam ga pozvao sa: lin(out,13); i kompajler mi nacrta kursor na ono du i kaže expected :((( P.S. To radi TC 1.0
unknown.718 dejanr, -> #716, d.petrovic
>> E, sad, knjiga nije orijentisana na XT/AT, pa pitanje je da li to imaju >> 80x86 procesori, a pitanje je i odakle autoru knjige podaci;) Tvrdnja se odnosi na VAX.
unknown.719 janko, -> #714, glisin
> Vidi ti ovo! Nemoj reći da može da se stavi HELP iz > BC2.0 u direktorijum sa TC2.0 i da ga ovaj vidi bez > problema? Jel to to? Nisam probao da li ga razume integrisana okolina, ali ako se instalira sa THELP-om iz 2.0 (rezidentno, daklem) naravno da može. Možda je neko probao i za IDE? Inače, BC help je bolji jer ima primer programa za svaku naredbu, za razliku od helpa za TC 2.0, koji ima samo opise.
unknown.720 janko, -> #715, glisin
> koji je nanet u završnoj fazi kod kontaktnog sloja. Maske > se ne rade ponovo jer se za VLSI obično elektronskim > snopom iscrtavju sve maske po Waferu, tako da je > ser.br. lako promeniti. Inače, on se stavlja na čip > zbog vizuelne kontrole i eventualnog odbacivanja serije, > etc... Ne razumem se u to puno, priznajem. Sve što znam čuo sam na nekim predmetima, koje sam već napola zaboravio... pa zato imam još pitanja: Kako se elektronskim snopom iscrtava nešto što se menja od čipa do čipa? Kako se onda kontroliše taj snop? Da li su onda maske uopšte potrebne, ako snop može da se kontroliše? > Naravno, nije isključeno ni da se u nekim slučajevima > serijski broj unosi kao neki registar (i to je lako > promeniti, opet samo završna faza), ali ja za Kako se i ovo postiže? Zar jedan registar ne čini puno puno slojeva (svi ti tranzistori itd.)? Zar to nije malo više od završne faze?
unknown.721 janko, -> #713, mjova
> pa da bi prešao na objektno programiranje prvo bi trebalo OOP gurui se kunu da će se na C++ lakše navići tipovi neopterećeni predznanjem C-a. žini mi se da je to malo ekstreman stav, ali definitivno je moguće ODMAH učiti C++, ako ima ko da te uči!
unknown.722 janko, -> #717, d.petrovic
>> Za početak: nabavi knjigu koja opisuje ANSI C. Ti pišeš >> po K&R > > Prporuči mi neku, baš počinje da me interesuje C. Pa, referentna knjiga je Brian Kernighan, Denis Ritcie, The C Programming Language, Second Edition (ako sam sve dobro otkucao napamet :) Postoji i prevod na srpski, u izdanju Savremene administracije, ali je blago rečeno odvratan, a ima i tonu bagova i u sorsovima. Ako znaš engleski, zaobiđi prevod... Neko, možda, zna i neku knjigu koja je pristupačnija početniku? >> void lin(FILE* out, du )> > Ovo ne radi :(( > i kompajler mi nacrta kursor na ono du i kaže expected > :((( Jeste, verovatno treba void lin( FILE* out, int du ) Nikada dosad nisam probao da smuljam u deklaraciju i K&R i ANSI stil, pa nisam ni znao kako se kompajler ponaša. :) Daklem, moraš SVUDA da koristiš deklaracije.
unknown.723 korvin, -> #708, janko
>> Ako nemaš nameru da se objektuješ, dovoljan ti je Turbo C 2.01. >> Mali je, sladak, brži i od naslednika (jasno je zašto). Jedino >> ima slabiji help od Borland 2.0 i 3.0. Preporučujem help iz BC >> 2.0. Eh, pa ta me dilema i muči :) Ja u početku, dok ne savladam C neću da radim sa objektima ali ne znam da li ću kasnije moći da se brzo prilagodim Borlandu 2.0 /3.0 ? Takođe, to sam zaboravio da priupitam, koju mi literaturu preporučujete ?
unknown.724 glisin, -> #720, janko
ŢŢŢKako se elektronskim snopom iscrtava... Pijuh, duga priča, ali nešto poput katodne cevi, lepo se crta slika koja je projektovana u nekom paketu za izradu VLSI integrisanih kola po waferu. ŢŢŢZar jedan registar ne čini puno puno slojeva (svi ti tranzistori itd.)? ŢŢŢZar to nije malo više od završne faze? Eto ti sad! Pa jeste, samo što se završnom maskom ostvare spojevi koji ti trebaju i to je to. Sve se napravi, pa se onda ne poveže ono što nije potrebno (to jest, poveže se tako da ne vise izlazi u prazno), ili se stvar izvede tako što se upravlja emitorskim ulazima (TTL) ili gejtom (MOS). Recimo, tako se rade MPROM memorije (Mask Programmable ROM). Evo jedne jako uprošćene verzije sa običnim tranzistorima sa zajedničkim kolektorom (BTW, osetljivo je na smetnje jer neke baze "vise" u prazno što nije baš zdravo): E1 E2 E3 E4 █ █ █ █ ▄▄▄▄▄▄▄ C ┌────█─────────────█─────────────█─────────────█──────█──┐ │┌───█───┐ ┌───█───┐ ┌───█───┐ ┌───█───┐ ███ │ ││┌──█──┐└────┐│┌──█──┐└────┐│┌──█──┐└────┐│┌──█──┐└────┐│ │││ ███ │ ███ │││ ███ │ ███ │││ ███ │ ███ │││ ███ │ ███ ││ ││└─────┘ █ ││└─────┘ ││└─────┘ █ ││└─────┘ █ ││ │└─────────█──┘└────────────┘└─────────█──┘└─────────█──┘│ └──────────█───────────────────────────█─────────────█───┘ ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ Ucc Ovo je kombinacija 1011 na 4-bitnom registru. Kao što vidiš SAMO završni aluminijumski sloj se razlikuje, sve ostalo ostaje isto. Naravno, ovo je gruba verzija, ima tu još šta da se doradi (nulovanje slobodnih baza recimo) ali ovo je principijelna šema. Uf! E, sada smo DEFINITIVNO promašili temu! (cccc...) Ako moderatoru smeta, neka poruku ćušne u 'razno'. ;-)))))))) ŢŢŢIGGYŮŮŮ
unknown.725 d.petrovic, -> #722, janko
> Pa, referentna knjiga je Brian Kernighan, Denis Ritcie, > The C Programming Language, Second Edition (ako sam sve > dobro otkucao Imam to ! :))) Ali prevod, engleski i onako ne znam :(((, sad ću da je proučavam. > void lin( FILE* out, int du ) > > Nikada dosad nisam probao da smuljam u deklaraciju i K&R i > ANSI stil, pa nisam ni znao kako se kompajler ponaša. :) > > Daklem, moraš SVUDA da koristiš deklaracije. Ni to ne radi !? :((( Zanemarili smo prvi deo, kako se sad to pa poziva ? Inače neće biti mnogo smuljano jer je to program od oko 400-500 redova sa <15 funkcija. Samo dok još malo izbistrim literaturu i srediću i te detaljčiće. Znači sredi mi sad kompletni problem (verovatno je problem u pozivu funkcije) !? void main () š /* Da li mi svud ovde treba void ? */ Obrazac(); ć void obrazac() š FILE *out; out=fopen("PROBA.TXT","wt"); fprintf(out,"Testiranje"); lin(out,20); /* Verovatno je sad problem ovde */ ć void lin(FILE *out,int du) š int br; for(br=0;br<=du;++br) fprintf(out,"-") ć Pozdrav, Dejan
unknown.726 spantic, -> #717, d.petrovic
> Prporuči mi neku, baš počinje da me interesuje C. Mikro knjiga je izdala sjajnu knjigu "Programiranje u Cu". Po meni je mnogo jasnija od K&R standarda Ca koji na srpskom postoji u dva izdanja: prvim izdanjem i drgim u kome je ANSI C. K&R je pisan bukvalno za programere koji sada treba da pređu na C. Jedina kvaka je cena od 4500 dinara.
unknown.727 prvul, -> #703, d.petrovic
Ůlin(out,du) š Ů▄▄▄ lin(FILE *out, int du) { Ů int br; Ů▄▄▄ Fuj to! I još nešto. Ne znam u čemu radiš, ali ako je npr. turbo C ili TC++, onda u opcijama kopajlera opciju Source treba staviti na ANSI C, ili TC++, a nikako na K&R, ako hoćeš da ti ovo radi.