-
11. Data: 2009-06-05 06:53:16
Temat: Re: Nauka C - co radzicie ?
Od: "MH" <l...@o...pl>
> Jeżeli uczysz się pod kątem programowania DSP, to tam
> uczyłbym się programować.
Tylko i wyłącznie pod kątem uC/DSP.
MH
--
Wysłano z serwisu OnetNiusy: http://niusy.onet.pl
-
12. Data: 2009-06-05 08:06:56
Temat: Re: Nauka C - co radzicie ?
Od: "Artur M. Piwko" <m...@b...pl>
In the darkest hour on Fri, 05 Jun 2009 00:24:02 +0200,
Waldemar Krzok <w...@z...fu-berlin.de> screamed:
>> Zycie zmusza mnie do nauczenia się C pod kątem zastosowania w DSP. Chyba
>> wybiorę TI. Nieźle daję sobie radę w Pascalu i Assemblerze. Ale jak patrzę
>> się na źródła w C , to dostaję wysypki. {} , zamiast begin/end , a++
>> zamiast a:=a+1 , symbole logiczne nie całkiem logiczne , to się cholernie
>> źle czyta. Do tego możliwość zdefiniowania zmiennej byle gdzie , to
>> zaproszenie do zrobienia z programu totalnego burdelu.
>
> mozesz, ale nie musisz. Burdel mozna zrobic z programu w Pascalu, jak sie
> chce. A jak ci sie nie podoba, to zrob sobie cos takiego (na poczatku):
> #define begin {
> #define end }
> #define or ||
To ostatnie nie wszędzie trzeba. Ktoś już na to wpadł wcześniej.
#include <iso646.h> /* C */
#include <ciso646> // C++
The iso646.h header defines the following 11 macros as stated below:
* and defined as &&
* and_eq defined as &=
* bitand defined as &
* bitor defined as |
* compl defined as ~
* not defined as !
* not_eq defined as !=
* or defined as ||
* or_eq defined as |=
* xor defined as ^
* xor_eq defined as ^=
--
[ Artur M. Piwko : Pipen : AMP29-RIPE : RLU:100918 : From == Trap! : SIG:240B ]
[ 10:03:14 user up 12094 days, 21:58, 1 user, load average: 0.05, 0.28, 0.54 ]
My mother never saw the irony in calling me a son-of-a bitch. -- J. Nicholson
-
13. Data: 2009-06-05 08:11:03
Temat: Re: Nauka C - co radzicie ?
Od: John Smith <d...@b...pl>
>>Jeżeli uczysz się pod kątem programowania DSP, to tam
>>uczyłbym się programować.
>
>
> Tylko i wyłącznie pod kątem uC/DSP.
>
Wiem o co pyta autor wątku.
To studentów elektroniki uczyłem programowania. Tom pierwszy wspomnianej ksiązki
opisuje język C. Nie będę twierdzi, że jest najlepsza itp. Jest łatwa w odbiorze,
ma bardzo dużo dobrze skomentowanych przykładów i jest łatwo dostępna.
Oprócz tego, współczesne kompilatory uC czy DSP, mają mozliwość programowania w C++.
K.
-
14. Data: 2009-06-05 09:15:42
Temat: Re: [OT] Nauka C - co radzicie ?
Od: Waldemar Krzok <w...@z...fu-berlin.de>
John Smith schrieb:
>>
>> Jak zaglądam po 2-3 miesiącach do programów napisanych przez siebie , też
>> zastanawiam się o co temu idiocie chodziło !!
>
> To oznacza, że nie ma tam za grosz dokumentacji programu.
> Moje programy pisane 20 lat temu muszę odszyfrowywać na nowo, te pisane
> 5 lat temu
> często poprawiam z marszu.
jak ktoś kiedyś napisał: dokumentacja programów jest dla mięczaków i
każdy program, który jest udokumentowany trzeba napisać od nowa. ;-)
Jednak staram się dokumentować, przynajmniej tak, żebym się sam w tym
pozbierał. A pracując w firmie produkującej biblioteki działające na
wielu platformach nauczyłem się pisać programy w standarcie. U nas był
lint na początku testowania, nie na końcu.
A co do programowania w makaroniarskim kodzie to miałem grupkę studentów
wychowaną na ATARI, C64 i Spectrum-Basicu (uczyłem wprowadzenia do
programowania w Pascalu w latach 1983-1987). Produkowali niesamowite
kody, czytać się nie dało, choćby z powodu formatu. No to dałem im
zadanie na kartkówkę na ćwiczeniach: programik, jakieś 40 linii kodu,
ale sformatowane w blok (wszystkie spacje zlikwidowane), same wielkie
litery, zmienne nazywały się A001 do Acośtam i na dokładkę w programie
sam program był zmieniany (znaczy opcode podmieniałem przez zagrywkę z
union). Studenci mieli 60 minut na zanalizowanie programu i prezentację
wyniku (bez komputera). Program w sumie nie robił nic ciekawego,
wyliczał wartość wielomianu, ale tylko jednemu studentowi z 20 udało się
toto rozszyfrować.
Z kolei na zajęciach z systemów operacyjnych mieliśmy analizę kernela
starej wersji unixa (w C). Pięknie skomentowany (made in Berkeley). Ale
komentaż jednej funkcji powalał: "we do not expect that you'll
understand this". Funkcyjka może 20 linijek, która załączała sceduler,
multitasking i wracała zupełnie nie tam, gdzie człowiek myślał. ;-)
Waldek
-
15. Data: 2009-06-05 09:29:07
Temat: Re: Nauka C - co radzicie ?
Od: Waldemar Krzok <w...@z...fu-berlin.de>
MH schrieb:
>> mozesz, ale nie musisz. Burdel mozna zrobic z programu w Pascalu, jak sie
>> chce. A jak ci sie nie podoba, to zrob sobie cos takiego (na poczatku):
>> #define begin {
>> #define end }
>> #define or ||
>> i tak dalej :-)
>
> Nie wiedziałem. To już trochę mnie zachęca ...
>
>
>> Ja sie uczylem "u zrodel", czyli Kernighan & Ritchie, zreszta mialem na to w
>> sumie 4 godziny, wraz z napisaniem i przetestowaniem programu. Da sie.
>
> Być może zupełnie irracjonalnie się uprzedziłem do samej notacji.. Nie mniej
> jednak , powiedz mi czy C pod kątem zastosowania w DSP bardzo różni się od C
> jakiego używa się do pisania jakichś tam aplikacji pod peceta? Przykładowo ,
> chcę wysłać bajt danych do portu o określonym adresie. Czy są na to funkcje
> biblioteczne , czy muszę robić wstawki assemblerowe?
w DSP musisz czasem trochę inaczej myśleć, bo nie zawsze kompilatorowi
uda się zoptymalizować pipelining. Sam nie programowałem DSP zbyt
intensywnie (znaczy raz tylko poprawiałem program napisany przez kolegę
na TMS320C40), ale jak sobie przypominam, to trzeba czasami uważać na
równoległe przetwarzanie danych, by nie pracować na danych, których
jeszcze nie ma. Ponieważ w C jest (też w ANSI) operator procesów
równoległych (rozdzielenie operacji przecinkiem, a nie średnikiem)
możesz mieć z tym problemy na dzieńdobry. Ale jak pisałeś programy na
DSP w assemblerze, to problemów nie widzę. Zresztą przez mojego
profesora C był traktowany jako assembler wyższego poziomu, podobnie jak
FORTRAN.
Do portów masz na ogół funkcje biblioteczne, również do synchronizacji
procesów, wstawki assemblerowe są w C w 99.9% zbędne. Ewentualnie można
zrealizować funkcje bezpośrednio w assemblerze i dolinkować do reszty
pisanej w C.
Waldek
-
16. Data: 2009-06-05 09:51:58
Temat: Re: [OT] Nauka C - co radzicie ?
Od: RoMan Mandziejewicz <r...@p...pl>
Hello Waldemar,
Friday, June 5, 2009, 11:15:42 AM, you wrote:
[...]
> Z kolei na zajęciach z systemów operacyjnych mieliśmy analizę kernela
> starej wersji unixa (w C). Pięknie skomentowany (made in Berkeley). Ale
> komentaż jednej funkcji powalał: "we do not expect that you'll
> understand this". Funkcyjka może 20 linijek, która załączała sceduler,
> multitasking i wracała zupełnie nie tam, gdzie człowiek myślał. ;-)
Mam kawałek kodu, który napisałem na początku 1999 roku. Ma niewiele
więcej linijek. I na jego analizę poświęciłem kiedyś kilka dni, bo za
czorta nie pamiętałem, jak to działało i dlaczego dla tylko dwóch
poziomów wywołania zastosowałem rekurencję.
Prosta procedurka generująca SGML dla Pogromu Płatnika - na podstawie
danych z baz.
Dzisiaj się już cieszę, że od dwóch lat nie jestem programistą :)
--
Best regards,
RoMan mailto:r...@p...pl
Spam: http://www.allegro.pl/sklep/7416823_squadack :)
-
17. Data: 2009-06-05 10:14:40
Temat: Re: Nauka C - co radzicie ?
Od: Sebastian Biały <h...@p...onet.pl>
Waldemar Krzok wrote:
> #define begin {
> #define end }
> #define or ||
> i tak dalej :-)
O bosze, duch bajtka i jego kursu C z lat 80 wracają ! Zombie atakują !
Błagam, tylko bez takich rad ...
-
18. Data: 2009-06-05 10:31:48
Temat: Re: Nauka C - co radzicie ?
Od: MoonWolf <m...@p...com>
Sebastian Biały denied rebel lies:
> Waldemar Krzok wrote:
>> #define begin {
>> #define end }
>> #define or ||
>> i tak dalej :-)
> O bosze, duch bajtka i jego kursu C z lat 80 wracają ! Zombie atakują
> !
#define majster main
> Błagam, tylko bez takich rad ...
MSPANC
--
<:> Roger, MoonWolf Out <:>|That's only a statue
(::) (::)|
(:) JID:m...@j...org(:)| http://karakkhaz.prv.pl
-
19. Data: 2009-06-05 12:26:34
Temat: Re: Nauka C - co radzicie ?
Od: Rafal <r...@o...pl>
Waldemar Krzok pisze:
> MH wrote:
>
> #define begin {
> #define end }
> #define or ||
> i tak dalej :-)
#define TRUE FALSE
//Happy debugging suckers
z dzisiejszego wydania joemonstera:)
Pozdrawiam
Rafał
-
20. Data: 2009-06-05 12:46:23
Temat: Re: [OT] Nauka C - co radzicie ?
Od: Sebastian Biały <h...@p...onet.pl>
MoonWolf wrote:
> #define majster main
Dokladnie :/
Jeszcze widziałem w jednej książce do gimnazjum język C przetłumaczony
na pl (tak, z ą,ę ...).
Uprasza się humanistów i programatorów w pascalu o zajmowanie się swoja
działką :/