Software - Recipe for Computing
Early Programming: The Use of Punch Cards
In the 1950s, punch cards were employed by computer scientists to sort programs.
Each punch card represented bits that the CPU would read to perform instructions.
A typical set of instructions in binary code could include actions like:
Grab input data from memory location.
Perform calculations using the input data.
Store output data back into memory.
Transition from Punch Cards to Assembly Language
Storing programs on punch cards was cumbersome and required managing numerous stacks of cards.
A more efficient solution was needed for sending instructions to machines, leading to the creation of Assembly Language.
Assembly language allowed the use of more human-readable instructions compiled into machine code, enhancing ease of programming.
Example of assembly instructions:
Take integer from register one.
Take integer from register two.
Add integers from both registers and output result to register four.
Limitations of Assembly Language
Although assembly language was an improvement over binary code, it still resembled machine code closely and was not entirely user-friendly.
Programs written in assembly were CPU-specific, meaning they could only run on the designated CPU or its family.
Introduction of Compiled Programming Languages
To address the limitations of assembly language, compiled programming languages were introduced.
These languages allow programmers to write human-readable instructions that a compiler converts into machine code.
Admiral Grace Hopper was instrumental in the invention of compilers, which significantly simplified programming.
Example of compiled code similarity:
"If written in a human-friendly manner, the compiled output still corresponds directly to machine instructions."
Emergence of Scripting Languages
Over the years, many programming languages have been developed to simplify CPU commands into easier instructions.
Interpreted languages emerged, which differ from compiled languages.
Interpreted languages do not compile ahead of time; instead, they are executed directly by an interpreter running a script of code, translating it into CPU instructions in real-time.
Role of Programming and Scripting in IT Support
Learning to write code, especially using scripts, can enhance the capability of an IT support specialist.
Scripting helps users automate tasks, allowing problems to be addressed once and the solution reused efficiently.
Overall, programming languages play a crucial role in designing programs that execute various tasks.