Continue to Site

Welcome to our site!

Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

  • Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

names of the best books to buy

Status
Not open for further replies.

albert_80

Banned
sdjfsuftqwiufamsn vjeagbliaeu
fgmasndlkerhgoierh gghoiergoashg
gmhdfgheogheorgheoiheoioeihlk
 
Last edited:
Algorithms (programming):
The Art of Computer Programming, Volumes 1-4
Numerical Recipes in C - The Art of Scientific Computing
Expert C Programming - Deep C Secrets
21st Century C (O'Reilly)
Algorithms for Programmers - Ideas and source code
Flatland: A Romance of Many Dimensions

Computer architecture:
Computer Organization and Embedded Systems (McGraw-Hill)
 
Last edited:
Algorithms (programming):
The Art of Computer Programming, Volumes 1-4
Numerical Recipes in C - The Art of Scientific Computing
Expert C Programming - Deep C Secrets
21st Century C (O'Reilly)
Algorithms for Programmers - Ideas and source code
Flatland: A Romance of Many Dimensions

Computer architecture:
Computer Organization and Embedded Systems (McGraw-Hill)

These would have been top of my list too.

However the original Kernigan & Richie book on C programming is still considered a reference C bible to most.
 
Thanks, looks like a good read. I've been struggling with pointers.

My advice to people learning C, or any language, is to skip the beginner books. Go for the "advanced" books right away. Programming is not that hard.. you just have to be interested enough to learn it.
 
Bill!! You have done assembly programming... Pointers are just indirect addressing.. When I was learning C ( on the PC) Pointers were a little bit daunting... But on the humble PIC they are quite easy to understand.....

My advice to people learning C, or any language, is to skip the beginner books. Go for the "advanced" books right away. Programming is not that hard.. you just have to be interested enough to learn it
I'm sorry but I completely disagree with that statement... You really need to get to grips with the syntax BEFORE jumping in feet first.. Look back at the thread we both were helping on (not any of Ritesh's) you were overly concerned over switch statements used instead of simple tables.... Some folk NEED to start at the beginning..
 
you were overly concerned over switch statements used instead of simple tables.... Some folk NEED to start at the beginning..

I'm concerned over many things. Of course you need to learn the syntax and basics etc. but buying a book for that is waste of money. If you are going to buy a book.. buy a really good one.. an expert book.
 
Hi,

Did someone hack alberts (the OP) account or something? His first post is unreadable or else i am really really drunk :)
Check it out.
 
Hi,

Did someone hack alberts (the OP) account or something? His first post is unreadable or else i am really really drunk :)
Check it out.

Haha... what happened? Did he edit that himself? Last edited two days ago (17th july).
 
Did someone hack alberts (the OP) account or something?
I think that Bill from the BlueRoom somehow upset him in another thread, and so he threw all his toys out of the cot and went off in a huff.

JimB
 
I think a few books on internet etiquette and manners would be a good choice. :p

Maybe one or two on maturity and self control would be good too? :confused:
 
Thanks, looks like a good read. I've been struggling with pointers.

Had troubles with them in my first and only attempt to learn C.

Pointers math was the actual reason to quit, 25 years ago.
 
Had troubles with them in my first and only attempt to learn C.

Pointers math was the actual reason to quit, 25 years ago.

It was the syntax that made me nuts. MPLABX has a nice XC8 reformatter that got me past that. Pointers are still a little strange, I understand what they are and how they're used but the syntax is wonky.

And yes seem I drove the OP to anger in another thread (it got deleted).
 
Programming is a mind process. You are either good at it or fail early in the process. Not everyone is cut out to be an Astronaut. Expecting a novice to pick it up at an advanced level is pants.
 
Programming is a mind process. You are either good at it or fail early in the process. Not everyone is cut out to be an Astronaut. Expecting a novice to pick it up at an advanced level is pants.

I agree with the "mind process" thing. Programming is hard to learn because you think it is difficult and complicated. I struggled with pointers a lot when I started to learn C. After I started learnin microcontrollers I started to understand pointers.. it was so simple that I was amazed. Pointer is just a memory address. Maybe I understood the concept better with microcontrollers because the memory model is so simple.

I think learnin C programming is easy. Important thing is that you need to know your hardware (or operating system), and that is the more difficult part (my opinion). Implementing complicated algorithms etc. is difficult (in any language).

I agree that C syntax has lot of flaws.. Pointers are a good example of this: * can be used to declare a pointer or dereference a pointer. It is also multiplication operator. Not good.

Example:

C:
int valueA = 2;
int valueB = 5;
int *pointer;

pointer = &valueB;

return valueA **pointer; // This is perfectly good, but how can you tell what the hell is going on here.. This returns the value 2*5. Really bad syntax.

This is also perfectly valid C syntax, but who can tell what it actually does.. I would need to check some books to find out:
z = y+++x;

And if you want to divide two values, given as pointers, this is not that simple:
ratio = *x/*y;
That won't compile because /* is the start of a comment. You need to write it like this: ratio = *x/(*y);
Or put a space between: ratio = *x/ *y; // Who said that spaces do not matter in C..

And then there is this:
a //*
//*/ b
That is same as 'a/b' in C, but only equal to 'a' in C++. The syntax of C/C++ is really not that great.
 
Last edited:
Status
Not open for further replies.

Latest threads

New Articles From Microcontroller Tips

Back
Top