24-12-2012, 05:53 PM
Evolution and History of Programming Languages
Evolution and History.ppt (Size: 977.5 KB / Downloads: 155)
The Evolution of Programming Languages
To build programs, people use languages that are similar to human language. The results are translated into machine code, which computers understand.
Programming languages fall into three broad categories:
Machine languages
Assembly languages
Higher-level languages
The Evolution of Programming Languages -
Machine Languages
Machine languages (first-generation languages) are the most basic type of computer languages, consisting of strings of numbers the computer's hardware can use.
Different types of hardware use different machine code. For example, IBM computers use different machine language than Apple computers.
The Evolution of Programming Languages - Assembly Languages
Assembly languages (second-generation languages) are only somewhat easier to work with than machine languages.
To create programs in assembly language, developers use cryptic English-like phrases to represent strings of numbers.
The code is then translated into object code, using a translator called an assembler.
The Evolution of Programming Languages - Higher-Level Languages
Higher-level languages are more powerful than assembly language and allow the programmer to work in a more English-like environment.
Higher-level programming languages are divided into three "generations," each more powerful than the last:
Third-generation languages
Fourth-generation languages
Fifth-generation languages
Higher-Level Languages - Fifth-Generation Languages
Fifth-generation languages (5GLs) are an issue of debate in the programming community – some programmers cannot agree that they even exist.
These high-level languages would use artificial intelligence to create software, making 5GLs extremely difficult to develop.
Solve problems using constraints rather than algorithms, used in Artificial Intelligence
Prolog
Hardware Description Language (HDL)
Basic idea is a programming language to describe hardware
Initial purpose was to allow abstract design and simulation
Design could be verified then implemented in hardware
Now Synthesis tools allow direct implementation from HDL code.
Large improvement in designer productivity
HDL
HDL allows write-run-debug cycle for hardware development.
Similar to programming software
Much, much faster than design-implement-debug
Combined with modern Field Programmable Gate Array chips large complex circuits (>100000s of gates) can be implemented.
Verilog HDL
Verilog constructs are use defined keywords
Examples: and, or, wire, input output
One important construct is the module
Modules have inputs and outputs
Modules can be built up of Verilog primatives or of user defined submodules.