Hi there we know that platform independence is one of the key benefits of jello. 2
But before understanding how jolly to use black comedy Burnetts we need to first understand what black 3
from dependency is to understand back home dependency. 4
We also need to know what abolitionists compulsion is a very fundamental concept in computer science 5
. 6
If you are new to programming or not completely sure about what compulsion is the short discussion on 7
compilation should be helpful. 8
Let's start with the absolute basic concepts of a computer. 9
Every computer has a fixed set of instructions. 10
The chip on the stunts on a computer program is made up off some of these instructions. 11
That is the instructions help a computer program will form something meaningful. 12
Each instruction is basically a sequence off zeroes and once that is an instruction has it binary format 13
such instructions that computer understands. 14
It's called machine language. 15
That is the language which a machine understands machine language is also referred to as machine code 16
and this sometimes also referred to as native code. 17
And here's an example of machine instruction which does the program to do something. 18
Not as you may imagine it would be an extremely difficult task for programmers to write programs in 19
machine language which how only zeros and ones. 20
So it's got to be simpler than this. 21
So computer scientists came up with another language called assembly language which was much more easier 22
to read and write. 23
Here's an example to add to them first which for sure is much more explicit than machine code. 24
So assembly language but a Whites Soden higher level rubescens horror writing instructions. 25
But computers understand only machine language they don't understand assembly language so that is a 26
program called assembler which translates assembly language instructions to machine language instructions 27
which a computer can't understand. 28
No but machine language on assembly language are referred to as low level languages. 29
And that's because they use low level details of the computer. 30
One example would be specifying the memory location where we are storing data and writing programs even 31
in assembly language is still tedious supercop on most wanted programs to be expressed in a more easier 32
and they also wanted to hide the low level details. 33
So in time that came up with high level languages I'm some example high level languages in Fortran C 34
C++. 35
Our very own Java and C-Sharp and they use English like words mathematical notations and punctuations 36
to write programs so that much easier to write and read as we will see in this course. 37
And of course they also hide low level details of the computer. 38
So could it be mostly use only high level programming languages. 39
Assembly language is not used very much and is used only where performance is critical. 40
Like in the case of operating systems or electronic devices and in terms of terminology. 41
Sourcecode is a term that is used to refer to any code which is expressed in any programming language 42
. 43
Not like in the case of assembly language. 44
Source code cannot also be understood by a computer. 45
So we need to translate source code into machine language. 46
The transmission from source code to machine code is done by a program called compiler machine code 47
which is the executable program is then executed directly by CPQ in a separate step. 48
Note that in this illustration we are calling the translator language as target language or not machine 49
language. 50
And that's because in some cases it may be something else too. 51
For example in the case of C or C++ hardit language would be machine called Hollywood Angelas Yes it 52
is Java bytecode which will be discussed later. 53
Sometimes not a good language can also be another programming language. 54
There are some code operations that a compiler performs on let's see what those are really fine syntax 55
and semantics of the sourcecode is one of them. 56
This ensures that the source code complies with the rules of the programming language. 57
For example a program is made up of statements and in case of Java every statement must end with this 58
inequality. 59
Now if a statement doesn't end with a semicolon then the compiler detects it as a syntactic error unreported 60
to the upper compiler also performs certain code optimizations for faster execution. 61
Finally it generates machine code from the intermediate optimized core. 62
A compiler is a pretty complex program and these core operations are basic operations that any compiler 63
supports. 64
As you will see in this course it Djala compiler performs tons of additional operations to ease the 65
program much dusk so the completion process can be slow due to the complexity and translation. 66
However once compiled machine code execution will be very fast on the machine code can be executed anytime 67
on any number of things. 68
Any change to the source code requires complete recompilation. 69
Next we a look at platform dependency which will also give you an idea on how a C program is compiled 70
on Windows. 71
On Linux machines you're not going to write any code for this discussion but towards the end of the 72
chapter we will write compile and execute our first Gela program. 73
So in this chapter we will write only one program but as a cost progresses we will write lots and lots 74
of programs on every concept that we learn will be demonstrated through them or grow grass. 75
So that's about it. 76
Thank you. 77
Our next move will look at black from dependency