From: Frank on
> I'm an undergrad student and want to learn how to implement DSP algorithms
> on embedded systems.

If you really want to practice, get yourself an evaluation board from Analog
Devices
or Texas Instruments. Read the manuals, try out some of the examples, debug
code,
and once you feel comfortable with the whole thing, try and implement your
own stuff.


From: Andreas Huennebeck on
Rune Allnor wrote:

> On 7 Mai, 15:03, "third_person" <third_person(a)n_o_s_p_a_m.ymail.com>
> wrote:
>> I'm an undergrad student and want to learn how to implement DSP
>> algorithms on embedded systems.
> [..]
>> Q1) Should I start with C or C++? which is used more and why?
>
> C++ is more generic, and hides some technical details from the user.
> C++ might be easier to use, but this brings a performance penalty.

No, it does not. In fact C++ code can be faster. Try compiling C code
with a C++ compiler.

bye
Andreas
--
Andreas H�nnebeck | email: acmh(a)gmx.de
----- privat ---- | www : http://www.huennebeck-online.de
Fax/Anrufbeantworter: 0721/151-284301
GPG-Key: http://www.huennebeck-online.de/public_keys/andreas.asc
PGP-Key: http://www.huennebeck-online.de/public_keys/pgp_andreas.asc

From: glen herrmannsfeldt on
Andreas Huennebeck <acmh(a)gmx.de> wrote:
> Rune Allnor wrote:
(snip)

>> C++ is more generic, and hides some technical details from the user.
>> C++ might be easier to use, but this brings a performance penalty.

> No, it does not. In fact C++ code can be faster. Try compiling C code
> with a C++ compiler.

Object oriented code tends to do a lot of allocating and deallocaing
of memory, which usually has a performance penalty.

You can write OO C code, and you can write non-OO C++ code.

If you try compiling C code with a C++ compiler, it will
often fail.

-- glen
From: Rune Allnor on
On 10 Mai, 09:57, glen herrmannsfeldt <g...(a)ugcs.caltech.edu> wrote:
> Andreas Huennebeck <a...(a)gmx.de> wrote:
> > Rune Allnor wrote:
>
> (snip)
>
> >> C++ is more generic, and hides some technical details from the user.
> >> C++ might be easier to use, but this brings a performance penalty.
> > No, it does not. In fact C++ code can be faster. Try compiling C code
> > with a C++ compiler.

Haven't tried it, as there are other aspcts of C++ that by far
outweighs any speed benefits 'raw' C code might offer.

> Object oriented code tends to do a lot of allocating and deallocaing
> of memory, which usually has a performance penalty.
>
> You can write OO C code, and you can write non-OO C++ code.
>
> If you try compiling C code with a C++ compiler, it will
> often fail.

That has to do with uncompatible standards. Prior to C99
standard C was a subset of standard C++, to what extent such
standards existed and were agreed upon. Any standard-complying
C++ compiler would be able to compile any standard-complying
pre-C99 C code.

I know that C99 introduced certain keywords and extensions
that did not make it to the C++ standard, but they weren't
too many. Of course, some of the C99 extensions, like fixed-
size integer data types, were particularly pertinent to DSP,
which in turn means that somebody playing with DSP are far
more likely to hit the C/C++ incopatibility snags...

Rune
From: glen herrmannsfeldt on
Rune Allnor <allnor(a)tele.ntnu.no> wrote:
(snip)

>> If you try compiling C code with a C++ compiler, it will
>> often fail.

> That has to do with uncompatible standards. Prior to C99
> standard C was a subset of standard C++, to what extent such
> standards existed and were agreed upon. Any standard-complying
> C++ compiler would be able to compile any standard-complying
> pre-C99 C code.

One that happened to my wife once was a variable named new
in a C program, compiled with a C compiler. The compiler
refused it, considering it a reserved word. There are
compilers that can compile both, but there are enough
differences that the compiler must know which language
it is compiling.

> I know that C99 introduced certain keywords and extensions
> that did not make it to the C++ standard, but they weren't
> too many. Of course, some of the C99 extensions, like fixed-
> size integer data types, were particularly pertinent to DSP,
> which in turn means that somebody playing with DSP are far
> more likely to hit the C/C++ incopatibility snags...

To me, Java is more like C than C++ is, despite the name.

-- glen