If you studying python and Computer Science, this book helps you understand deep these topics
download
download
Последнее редактирование:
maybe best book about C![]()
i <3 googleA much more fun question! This is a rabbit hole I spent years gleefully tumbling down. Here are my recommendations along with explanations of why:
The C Programming Language, by K&R
This is the mother of all programming education books, and the most obvious recommendation I can make. But it's worth it. I received this book as a birthday gift when I was 17 and had no money. My girlfriend asked me to wait outside of Barne's & Noble's. So I did. She came out with a surprise: she had stolen me a 50 euro book - The C Programming Language 2nd Edition.
<3
Expect a simple, elegant introduction to the language that completely lacks modern best practices. It's an intro to what C is all about, but not a good guide for modern software engineering in C.
Beej's Guide to C Programming
This one's free online! https://www.beej.us/guide/bgc/
This isn't the best guide in the world - but it leads you up to the best network programming book ever written...
Beej's Guide to Network Programming
The foundation in Unix network programming this book leaves you with, will make you a better programmer for the rest of your days. Whether you're a sysadmin or a Django web dev, understanding sockets, binding, forking, and all the other Unix C networking goodies will give you a framework to understand how networked applications work at a relatively low level (but you still can and should go much lower!)
Also, an extra goodie from the same author: Beej's Guide to Unix Interprocess Communication
---
After those books, you should have a pretty solid mental model of how C works as a language. The C memory model, for and while loops, system calls and libraries, and more. C is a simple language, after all. Where you go from here depends on your interests. I myself am a software engineer who dreams of creating commercial malware (I've written plenty of recreational malware, though!) so where else would I go if not...reverse engineering!
To bridge your C knowledge to assembly, an absolute must read is Programming from the Ground Up, available for free from the FSF. This book is incredible. If you study it correctly and accompanied with other sources, this will turn you into a decent assembly programmer. I don't have good sources for learning GDB and other debugging tools, but you should learn those too.
Finally, a shoutout to Reverse Engineering for Beginners (https://beginners.re/).
With the background you'll have in C and assembly by this point, Ghidra will be an excellent choice for a reverse engineering tool. It reverse compiles asm back into C, as one of its many features. I recommend the Ghidra Book if this interests you.
If anyone is interested in Python, C, assembly, or reverse engineering, I'd be glad to provide free or very cheap lessons. I'm hoping to start a career on the black hat side of the fence.
PS: I promise I'll learn Russian soon. I've been watching the show Кухня to practice. Maybe we can exchange Russian lessons for coding lessons :3
Nyet tovarich - I agree the recommendation for K&R is as generic as it gets. But Beej and Programming from the Ground Up are way under rated in my opinion!i <3 google