Содержание
- 2. programmers productivity began to apply languages programming, not consoling with absolute languages. On COMPUTER of the
- 3. An absolute language is a programming language, directly perceived by a computer. Every command of absolute
- 4. absolute language the names of concrete registers of computer are specified and processing of data is
- 5. Application of mnemocode allows to automatize work of programmer on storage allocation, more precisely, on appropriating
- 6. Computer-independent languages are also divided by two groups on the degree of working out in detail
- 7. The program in procedure-oriented language does not almost depend on concrete COMPUTER which a task will
- 8. Appearance of new economic feasibilities set the problem before system managers - to create programmatic tools,
- 9. To the problem-oriented languages take the so-called unprocedural languages. Such languages which do not require the
- 10. In relation to a translator the languages all mentioned higher, except for absolute languages, are an
- 11. Computer-independent languages are effective only for the certain class of tasks. Out of this class of
- 12. Translators. Any program which translates arbitrary text in some input language in text in other language
- 13. The input language of assembler is a mnemocode, macro assembler is a macro language, compiler is
- 14. There are translators in which translation and execution is combined in time, they are named interpreters.
- 15. The lack of interpreter consists in the ineffective use of machine time. For example, at implementation
- 16. beginning translated into an absolute language. Such translation is carried out through a program-translator, called an
- 18. Скачать презентацию
Слайд 2programmers productivity began to apply languages programming, not consoling with absolute languages.
programmers productivity began to apply languages programming, not consoling with absolute languages.
Several hundred different languages are presently counted programming which are classified on different signs. Most general is classification on the degree of dependence of language from COMPUTER. On this sign languages are divided by two large groups:
• Computer-dependent languages,
• Computer-independent languages.
Computer-dependent languages, in turn, divide by machine and machine-oriented.
Слайд 3An absolute language is a programming language, directly perceived by a computer.
An absolute language is a programming language, directly perceived by a computer.
It is said that an absolute language is computer-dependent: the program, written in absolute language of computer of one type, as a rule, can not be executed on the computer of other type, if its absolute language is not identical to the absolute language of the first computer (or is not expansion in relation to this language). By another sign machine, or by a vehicle, there is character of commands dependence: in the commands of
Слайд 4absolute language the names of concrete registers of computer are specified and
absolute language the names of concrete registers of computer are specified and
Computer-oriented languages sometimes named usercodes. Distinguish two levels of computer-oriented languages. The languages of the symbol encoding behave to the first level, otherwise called mnemocodes, and to the second are macro languages.
A mnemocode differs from the absolute language of corresponding COMPUTER replacement of digital kodes of operations alphabetic (mnemonic), and digital addresses of operands - alphabetic or alphanumeric. During translating into the language of COMPUTER every command of mnemocode is replaced by the corresponding command of absolute language (<< one in one >>).
Слайд 5Application of mnemocode allows to automatize work of programmer on storage allocation,
Application of mnemocode allows to automatize work of programmer on storage allocation,
Language the second level is a macro language - along with the symbolic analogs of computer instructions, which a mnemocode consists of, assumes the use of macro instructions, not having direct analogs in an absolute language also. At translation every macro instruction is replaced by the group of commands of absolute language (<< one in a few >>). Application of macro instructions abbreviates the program, promotes the productivity of programmer. Programmer, using a computer-oriented language must be well acquainted with the features of device of machine which the program is made for.
Слайд 6Computer-independent languages are also divided by two groups on the degree of
Computer-independent languages are also divided by two groups on the degree of
The procedure-oriented languages are intended for description of algorithms (procedures) of decision of tasks, therefore they are also named algorithmic, although the concept of algorithmic language does not coincide with the concept of programming language. If a record in algorithmic language is un mediocre, suitable for an input in COMPUTER and transformations to the prepared executable code, then such language is simultaneously a programming language. Some algorithmic languages, strictly speaking, are not programming languages, if not to add the special tools to them. In particular, the algorithmic language Algol-60 becomes a language programming after plugging in him operators of input and output and specification of methods of implementation of some other operations of management an equipment COMPUTER.
Слайд 7The program in procedure-oriented language does not almost depend on concrete COMPUTER
The program in procedure-oriented language does not almost depend on concrete COMPUTER
A structure of the procedure-oriented languages is nearer to the human language, for example Russian or English, what to the language of COMPUTER. Therefore translating from the procedure-oriented language into an absolute language is carried out on principle "a few in a few". In other words, in most cases it is here possible to set accordance only between the group of elementary language constructs and group of commands COMPUTER, like during translating from English into Russian of group of words or even group of suggestions replace the group of words in other language. Word-per-word translation here is not possible.
Слайд 8Appearance of new economic feasibilities set the problem before system managers -
Appearance of new economic feasibilities set the problem before system managers -
These works were conducted in two directions. The special managing languages were created for providing of the operative affecting passing of tasks which was made on any early unelaborate (not dialog) languages. Languages which except for the aims of management would provide description of algorithms of decision of tasks were developed also.
The necessity of providing of the operative co-operating with an user demanded maintenance in memory of COMPUTER of copy of the initial program even after the receipt of object code in machine codes. At making alteration in the program with the use of dialog language the system of programming by means of the special tables sets intercommunication of structures initial and objective programs. It allows to carry out the required editorial changes in an object code.
Слайд 9To the problem-oriented languages take the so-called unprocedural languages. Such languages which
To the problem-oriented languages take the so-called unprocedural languages. Such languages which
Слайд 10In relation to a translator the languages all mentioned higher, except for
In relation to a translator the languages all mentioned higher, except for
Comparative description of languages. Computer-oriented languages are universal in the same degree the language of machine is universal in which, as in them contained tools of programming and decision on COMPUTER of any tasks, with which COMPUTERS can manage on the economic feasibilities. At programming on these languages it is possible to take into account the features of set of instructions and device of COMPUTER, that allows to create the high-quality programs. However computer-oriented languages are enough difficult for a study, and programing on them is difficult.
Слайд 11Computer-independent languages are effective only for the certain class of tasks. Out
Computer-independent languages are effective only for the certain class of tasks. Out
The procedure-oriented languages are programming languages, where possibility of description of the program is as to the aggregate of procedures (subprograms);
High-level languages are either procedural-oriented or problem-oriented. Procedure-oriented languages high level are universal languages programming which can be used for the decision of the most various tasks. The problem-oriented languages target specially at the decision of tasks of concrete types. Such languages, as Pascal, Cobol, Fortran, Basic are usually considered procedural-oriented, and such languages, as GPSS (simulation language) and SPSS (language for implementation of statistical calculations), - problem-oriented.)
Слайд 12Translators. Any program which translates arbitrary text in some input language in
Translators. Any program which translates arbitrary text in some input language in
It is possible to consider in sense of this determination the simplest translator, loader, which transfers the program in conditional addresses, executed as a module of loading, in an object code in absolute addresses. In this case an input language (language of loader) and objective language (COMPUTER language) are the languages of one level. However more frequent input and objective languages behave to the different levels. The level of input language is higher than level of objective language usually.
On the level of input language translators it is accepted to divide by assemblers, macro assemblers, compilers, generators.
Слайд 13The input language of assembler is a mnemocode, macro assembler is a
The input language of assembler is a mnemocode, macro assembler is a
The program, got after treatment a translator, is either directly carried out on COMPUTER or exposed to treatment other translator.
Compilers and interpreters. Usually the processes of translation and execution of the program are divided in time. All program is translated at first, and then carried out. Translators, working in such mode, name the translators of compiling type. If the input language of such translator is the procedure-oriented language high level, then a translator is named a compiler.
Слайд 14There are translators in which translation and execution is combined in time,
There are translators in which translation and execution is combined in time,
On pointing of control block, the block of analysis looks over source statements, recognizes their type and possibility of direct execution determines. Information about possibility of implementation of operator is passed to the control block, which causes corresponding subprogram, carrying out actions, prescribed by an operator.
In such chart a compiler can be done by very simple. An interpreter is some simpler than compiler, as direct execution of the recognized operators of input language does unnecessary actions, related to arrangement of object code, by registration of it in the single module of loading or as a few modules, if it is great.
Слайд 15The lack of interpreter consists in the ineffective use of machine time.
The lack of interpreter consists in the ineffective use of machine time.
Assemblers and macroprocessors
The programming direct requires very much the time and fraught by errors. The languages of assembler type, allowing to promote speed of process of programming and decrease the amount of errors of encoding, were therefore worked out. Instead of numbers, used for writing of the programs on absolute languages, rich in content mnemonic reductions and words of human language are used in the languages of assembler type. However computers can directly perceive the program in assembly language, therefore it must be in the
Слайд 16beginning translated into an absolute language. Such translation is carried out through
beginning translated into an absolute language. Such translation is carried out through
Languages of assembler type also are computer-dependent. Their commands straight and simply correspond to program instructions absolute. To accelerate the process of encoding of the program in assembly language, were worked out and plugged in assemblers the so-called macroprocessors. A programmer writes macro instruction as pointing of necessity to execute an action, described by a few commands in assembly language. When a macroprocessor during program translation reads macro instruction, he makes macro expansion - i.e. generates the row of commands of assembly language, corresponding to this macro instruction, Thus, the process of programming is considerably accelerated, as a programmer has to write the less number of commands for determination of the same algorithm.