I want to study low-level programming. Is C the only choice? Isn't worth check out other options like Rust? Or maybe...

I want to study low-level programming. Is C the only choice? Isn't worth check out other options like Rust? Or maybe, understand low-level with C, then later check out new languages?

Attached: c_language.png (600x600, 69K)

Other urls found in this thread:

amazon.com/Low-Level-Programming-Assembly-Execution-Architecture/dp/1484224027
csapp.cs.cmu.edu/
twitter.com/SFWRedditImages

Assembly

Learning C first lets you pick up Rust easily later.

go

>go
>"""low level"""
>garbage collected

>C
>low level

C isn't actually low level, learn Assembly along with C

Being fixed on one language is bullshit approach. Study computer architecture, OS architecture, assembly and reverse engineering basics, profiling and measuring and compilers. Language is just one of the tools.
You should know C because it's everywhere and is problematic enough to be hard to ignore until required. C++ is also frequent and fits for larger projects with more abstraction. Rust introduces concepts you should know and reason with even in C/C++ and is easier for beginners than C++ because everything around C++ is mess that would only confuse you.

Got it. Thanks user.

>i already know one or more programming languages
Learn both assembly and C, and read up on the theory.
>i don't know any programming language
Learn C with K&R, for the moment. It will give you a great and relatively brief introduction to programming.
The first chapter of the book is a pleb filter if you barely know programming. If you take your time and focus, the rest will be a cakewalk.

There is no standardized indicator of whether a language is low or high-level or not, it's a very human adjective.
Low-level just means close to machine language. C is sometimes referred to as "mid-level" both because of its high-level abstraction and the importance it gives to low-level operations.
>Being fixed on one language is bullshit approach. Study computer architecture, OS architecture, assembly and reverse engineering basics, profiling and measuring and compilers. Language is just one of the tools.
Soundest advice ever in this case.

Kotlin/native

fpbp /thread
best option for genuine low level programming

Go for Nim, it's flexible enough to allow both low level and high level programming, use pointers or disable the GC if you want to have full control.

Write shellcode.

unironically c++, with assembly on the side

>tfw anything that compiles to unmanaged code is low level

Learn C, but honestly if you want to go for Rust i wont stop you, its pretty comfy.

10 years and still no one gives a shit

Attached: 1531760424812.jpg (750x728, 270K)

But why? What do you mean when you say "low-level programming"? C is just a language, low-level programming might use C. Or might use something else depending entirely on what subject in the topic you want to study?

Operating systems? Microcontroller programminh? FPGA programming? Computer architecture? Compilers?

Sanest post I’ve seen in quite a long time on Jow Forums, congrats user

I just picked it up so I wouldn't know, but this seems to be like a running gag for all languages that compile to C

OP here

Yeah used C as an example because of this book:
amazon.com/Low-Level-Programming-Assembly-Execution-Architecture/dp/1484224027

This book explores the following topics:

"Learn Intel 64 assembly language and architecture, become proficient in C, and understand how the programs are compiled and executed down to machine instructions, enabling you to write robust, high-performance code.
Low-Level Programming explains Intel 64 architecture as the result of von Neumann architecture evolution. The book teaches the latest version of the C language (C11) and assembly language from scratch. It covers the entire path from source code to program execution, including generation of ELF object files, and static and dynamic linking. Code examples and exercises are included along with the best code practices. Optimization capabilities and limits of modern compilers are examined, enabling you to balance between program readability and performance. The use of various performance-gain techniques is demonstrated, such as SSE instructions and pre-fetching. Relevant Computer Science topics such as models of computation and formal grammars are addressed, and their practical value explained. "

What do you think? Is it a good book? Do you know the author of the book?

Sounds good. For how much it promises, it's quite short (440 pages), will give it a try.
Personally read CS:APP3e csapp.cs.cmu.edu/ recently which covers many similar topics, really good reading as well. No good quality pirated of 3rd edition though.

I am also waiting for a good quality scan of that book

its FFI is also insanely slow