Tuesday, May 5, 2020

The First Chapter of computer Languages Essay Example For Students

The First Chapter of computer Languages Essay The Tortuous Path of Early Programming. In the perpetual darkness more than two miles below the surface of the North Atlantic, a submersible sled slowly traced the alpine contours of the ocean bottom in the summer of 1985. Named the Argo after the ship in which the legendary Greek Hero Jason sought the Golden Fleece, the 16-foot-long craft resembled a section of scaffolding flung on its side and stuffed with equipment, Powerful lights, sonar, Video cameras. Far above, arrayed in front of a video screen in the control room of the U.S. Navy research vessel Knorr, Members of a joint French-American scientific expedition intently watched the images transmitted by the submersible as it was towed above a desolate landscape of canyons and mud slides. After 16 days of patient search, A scattering of metallic debris appeared on the screen, followed by the unmistakable outline of a ships boiler. A jubilant cry arose from the scientists. The ocean liner Titanic sunk 73 years earlier with more than 1,500 of its 2,200 passengers on board had finally been found. The quest for the remains of the Titanic in the crushing depths of the sea was a remarkable application of computer technology, as exotic in its means as in its venue. Not least of the keys to the successful outcome was the agility of modern computer programming. Argoss ensemble of sonar, lights and cameras was orchestrated by an array of computers that each programmed in a different computer language. The computer on the unmanned Argo itself was programmed in FORTH, a concise but versatile language originally designed to regulate movement of telescopes and also used to control devices and processes ranging from heart monitors to special-effects video cameras. The computer on the Knorr was programmed in C, a powerful but rather cryptic language capable of precisely specifying computer operations. The telemetry System at either end of the finger thick Co-ax cable connecting the vessels, which in effect enabled their computers to talk to each other, was programmed in a third, rudimentary tongue known as assembly language. Programming languages are the carefully and Ingeniously conceived sequences of words, letters, numerals and abbreviated mnemonics used by people to communicate with their computers. Without them, computers and their allied equipment would be useless hardware. Its own grammar and syntax regulate each language. A programming language that approximates human language and can generate more than one instruction with a single statement is deemed to be high-level. But computer languages tend to be much more sober and precise than human languages. They do not indulge in multiple meanings, inflections or twists of iron. Like computers themselves, computer languages have no sense of humour. Today there are several hundred such languages, considerably more than a thousand if their variations, called Dialects, are counted. They enable their users to achieve a multitude of purposes, from solving complex mathematical problems and manipulating (or crunching) business statistics to creating musical scores and computer graphics. No existing Language is perfect for every situation. One or more of three factors usually determines the choice among them: The language is convenient to the programmer; it is useable on the available computer; it is well suited to the problem at hand. The multiple tongues employed on the Titanic expedition are a case in point. For the computers aboard the surface ship Knorr, C was the preferred language because it provided more direct control of the computerised hardware. FORTH was the only high-level language that could be used on the submersible Argos computer. And the precise timing required timing required of the signals passed by cable between th e two vessels was best accomplishedby rigid assembly language. As varied languages have become the all build on a common base. At their most fundamental level, Computers respond to only a single language, The high and low of electric voltages representing the ones and zeros of binary code. Depending on how these signals are fed into a computers memory. Another might be a piece of data yet to be processed. Yet another collection of binary digits, or bits, might command the machine to perform a certain action, such as adding to numbers. The circuitry of each type of computer is designed to respond to a specific and finite set of these binary encoded machines, which may be combined and recombined to enable the machine to perform a vast range of tasks. Though straightforward enough this so-called machine is a forbidding, alien language to human beings. A computer program of any size, in its machine-code form, consists of thousands or even millions of ones and zeros, strung together like beads on a seemingly interminable string. A mistake in even one of these digits can make the difference between a programs success and failure. Less than half a century ago, machine code was the only means of communicating with computers. Since then, generations of language designers have harnessed the power of the computer to make it serve as its own translator. Now, when a programmer uses the command PRINT Hello or the statement LET A = B * (C D) in a program, a translating program is called into action, converting those commands into the ones and zeros that the machine can understand. The methods used to program the worlds first general-purpose computers were as cumbersome and primitive as the machines they served. The historic Mark 1, assembled at Harvard University during World War 2, was a five-ton conglomeration of relays, shafts, gears and dials, 51 feet long. It received its instructions for solving problems from the spools of punched paper tape that were prepared and fed into a computer by small corps if technicians. A more advanced machine, ENIAC (for Electronic Numerical Integrator and Computer), was completed i n 1945 at the University of Pennsylvanias Moore School of Electrical Engineering. Unlike the Mark 1, which was electromechanical, ENIAC was fully electronic. But it was still devilishly difficult to program. Its primary developers, Physicist John W. Mauchly and engineer J. Presper Eckert, had responded to the urgencies of wartime by concentrating on ENIACs hardware. Programming took a back seat. ENIAC was not even equipped to receive instructions on paper tape. To prepare it for operation, ma team of technicians had to set thousands of switches by hand and insert hundreds of cables into plug boards until the front of the computer resembled a bowl of spaghetti. Not surprisingly, ENIACs users tried to squeeze the last drop of information out of any given configuration before they undertook to change it. These early experiences made it all too plain that a better means of communicating with the machine with the machine was needed if computers were to approach their potential. And even as ENIAC hummed through its first electronic calculations, some forward-looking work on a higher level programming was being done elsewhere. In at least one case, however, many years would pass before the results came to light. Konrad Zuses world was crashing down around him early in 1945 as the allied military noose tightened on Berlin, his home city. The young German engineer had been working since before the war on a series of relatively small, general-purpose computers, using the living room of his parents apartment as his laboratory. Zuses efforts were a notable example of parallel yet independent developments in science; he had no idea of the similar progress being made in other nations, and his own government had shown little interest in his computer work. Shortly before the fall of Berlin, Zuse loaded his only surviving computer, dubbed the Z4, onto a wagon and fled with a convoy of other refugees to a small town in the Bavarian Alps. Arizona Concrete EssayShort Codes partner program was essentially a primitive interpreter, a language translator that converts the high-level statements in which a program is written into simpler instructions for immediate execution. As programming languages evolved, interpreters would become one of the two basic categories of language translators. New advances in languages soon overtook Short Code, but its central idea endured. Far from being simply glorified adding machines, computers are consummate manipulators of symbols, whether those symbols represent numbers, letters, colours, or even musical notes. A computer has no difficulty taking the code numerals 07 and performing the sequence of steps that leads it to add two numbers, as long as it has been programmed to recognise 07 as the symbol for addition. In the same manner, it can take a complete statement, such as IF N * 100 THEN PRINT N/47, and translate it into the basic machine instructions that will enable the hardware to carry out the desired task. This purposeful manipulation of symbols is the fundamental principle behind all programming languages. Although short code was never a commercial success, the language made a deep impression on Grace Hopper. Short code was the first step toward something which gave a programmer the power to write a program in a language that bore no resemblance whatsoever to the original machine code, she said. But before the promise of Short code could be realised, much more had to be done. The pace of progress in computer languages was tightly bound to advances in computer hardware, and during the late 1940s there were few such advances. Most of them were influenced by Mauchly and Eckerts early work and could in fact trace their origins to a specific event: a series of lectures held at the Moore School in the summer of 1946.There, Mauchly and Eckert discussed the successor to ENIAC they were planning. Dubbed the Electronic Discrete Variable Automatic Computer, or EDVAC, it would dramatically reduce the labour involved in changing from one program to another by storing its programs and date electronically in an expanded internal memory. One participant in that summer was Maurice V. Wilkes, then head of the Mathematical Laboratory at Cambridge University. Inspired by the lectures, Wilkes returned to England and set about designing a machine based on the EDVAC concept, construction began in 1947. Named the electronic storage Automatic Calculator, or EDSAC, it became operational in 1949, well before Mauchly and Eckerts firm produced its first commercial computer. Like many early computers, EDSAC was a finicky performer. One programmer recalled that even the sound of a airplane flying overhead could bring it to a halt. Whatever EDSAC was shut down for any reason, a set of initial orders had to be loaded into the machine to enable it to accept programs again. This process made a whiring sound, which was a signal for everyone who wanted to use the computer to come running, Programs in hand. Those fortunate enough to have offices nearest the computerusually ended up in the front of the queue. The others might have to wait a long time. At first, EDSAC could perform 18 basic operations (modern computers usually have a capability of 200), each of them triggered by a particualar sequence of ones and zeros. Early on, EDSACs designers decided not to force its programmers to use this machine code in their programs. instead they set up a system of mnemonics in which each machine instruction was represented by a single capital letter. Thus S meant Subtra ct, I meant Read the next row of holes T meant Transfer information to storage and Z meant Stop the machine. When a programmer typed a mnemonic on a specially adapted keyboard, the corresponding binary instruction was punched into a papertape, which could then be fes to the machine. Even more valuable than the mnemonics devised for EDSAC was the library of subroutines set up for the machine. Subroutines were already a familiar concept in computing: Grace Hopper and her group had used the on the Harvard Mark 1. But they continued to pose their own peculiar problems. Subroutines are independant sections of the computer program that are used over and over and are called for by the main program when needed.Early programmers often kept notebooks containing the comman used subroutines so that they did not have to start from scratch when one was needed. The problem was that the addresses that designated where each of a subroutines instructions and varibles were to reside in memory changed according to where the subroutine occured in the program. Maurice Wilked called the EDSAC scheme of mnemonics and subroutines an assembly system, Commanly known as Assembly. Assembly code reamsins in use today because of its close relation to the machine, an assembly language is machine-specific, designed to correspond to the set of machine-code instructions wired into a particular computers CPU. Thus, assembly lanuage is a favourite of programmers who want to compress their programs into the smallest possible space in memory and have them run as fast and efficiently as possible. These attributes made it ideal for programming the telemetry system used by the Titanics finders. Anyone writing in assembly language has to be intimately familiar with how a computer does things, To know, for example, the many steps required simply to add 2 numbers. Assembly written for one computer would be totally gibberish to another computer.The language was a creation of a brilliant english mathematician Alan M. Turing. By 1948, Turing was in charge of programming he prototype of a real computer called Mark 1, the machine that was being constructed at the University of Manchester. (It was not related to the Mark 1 of Harvard). The manchester Mark 1used combinations of five binary digits to represent the machines different instructions, with each instruction requiring four such combinations, or 20 bits. Intending to make the Mark 1 easier to program , Turing installed a system in which a mnemonic symbol was substituted for each of the 32 combinations of Zeros and Ones possible with a five-bit code. The symbols Turing assigned to the combinations were the letters, numerals an d punctuation mark of a standard teleprinter keyboard. For Example, a slash (/), or stroke to the British, stood for 00000, or zero, an R stood for 01010, and so up to a , representing 11111. That is the end of part one of the four part series. Please download or read the following files in the near future. I hope that you find this file helpfull. Bibliography:Time Warner Books,

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.