Answer the question
In order to leave comments, you need to log in
Before you start learning programming languages?
Hello. So I decided to study the C language and then I heard somewhere that before you learn it, you should understand the Computer Architecture, OS Fundamentals and basic ACM. But if I understand correctly, when studying the ACM itself, in any case, you are studying this very computer architecture, right? So this is the essence of the question: Do I need to study them separately, computers, operating systems and ACM itself, or can I just take and teach the basics of ACM, because. in the process of studying it, you can understand all this, after which you can already move on to C / C ++, or am I again a dunce misunderstanding something?)
Answer the question
In order to leave comments, you need to log in
it is worth understanding the Computer Architecture, OS Fundamentals and basic ACM.To write programs for computers, one must (suddenly) understand at least the basic principles of how computers work. It is not necessary to learn assembler, but to understand why there are 8 bits in a byte at the architecture level is important enough so that later there would be no questions "why can't you create a variable that would take up as much space as needed to store exactly the current value, and not more so that the memory save", otherwise they often ask such a game here. Also - the OS at the level of how the FS works, what page memory is, how addressing, character encodings and other components work. If bydlokodit - it does not need to know at all, if you write something more or less serious - without this, it will take a lot of time to understand what and how to do "to make it work." Another point is that it is not necessary to do this BEFORE training, it is quite possible to combine.
Not obligatory It is not bad to have a general idea, but it is not at all necessary, well, with the exception of developing drivers, kernel modules, components in C, where the speed of code execution is important, etc.
You definitely don't need to understand the architecture of computers or know how the OS works from the inside in order to learn programming. But when the questions "why so?" - I think it's time
Do not learn from materials in Russian, KnR first edition is an exception, just don’t capitalize later as well as they translated it in the translated edition.
Before learning C, you need to learn some simple programming language like VBA or Python
IMHO, before starting to study any programming language, it is enough to understand the following. topics:
- number systems,
- representation of numbers on a computer,
- text encodings,
- the basics of set theory and algebra of logic,
- the concept of the complexity of algorithms.
All of this is enough to master at the high school level, but firmly.
Everything else is learned in parallel with the programming language.
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question