### Developers Club geek daily blog

2 years, 9 months ago
The address programming language is considered one of the first programming languages of the high level. It was created by the Soviet developer Ekaterina Logvinovna Yushchenko together with the mathematician Vladimir Semenovich Korolyuk in 1955. Constructions of this algorithmic language were included into a basis of the modern languages of programming.

Developments of the member of the correspondent of Academy of Sciences of the USSR Alexey Andreevich Lyapunov became a peculiar base for address language. This outstanding mathematician created the operator programming method which was widely adopted in practice and exerted strong impact on all subsequent development of theoretical programming.

Ekaterina Logvinovna Yushchenko and Vladimir Semenovich Korolyuk

E. L. Yushchenko and V. S. Korolyuk realized in address language two general principles work — addressing and program control. Authors brought into the development means of a manipulation addresses of the second rank, and also created convenient system of concepts to describe a computer architecture and an instruction set. In other words — at the heart of address language the principle the relation of the address and contents allowing to describe in common form operations on TsVM was underlain.

In address language as objects of a certain system of the codes S having among themselves certain ratios elements of an original informatin, results of solutions of tasks and constructive objects for creation of programs are considered. By means of ratios it is possible to build expressions by normal rules. The codes received after execution of the operations specified in them will also be values of these expressions. But at the same time the set of elements of an original informatin (subset codes) can be set in an explicit form through set members of the addresses SI (AI ⊂ S).

Minus-stroke-operation — the return a stroke operation "-1" in (-1b = a). This operation is not unambiguous and to one contents of b there can correspond the set of the addresses Ab that for each a ∈ Ab will be' a = b.

To define and change address display, it is necessary to enter algorithm, the operation of sending on the address designated by the character . And then record of operation b ⇒ a will mean the following:
1) the element and joins in a set of A;
2) the element b joins in a set of B;
3) compliance '= is established by a b;
4) there are invariable all earlier set compliances of a type' x = y where x an is not equal.

Operation b ⇒ and assumes that and and b — some functions. In that case function value of b becomes contents of the address which is result of value a calculation (' a = b). In addition to a stroke operations when designing functions are used also arithmetic (+, - x, :), logical (∧, ∨, etc.), functional (sin, √ etc.), the relations (= <>, etc.) and others. All these functions are called address. The address formula of conversion (or a sending formula) is expressed to b ⇒ by a where an and b — address functions.

In address language process of information transform is presented in the form of the address program. It is set by initial address allocation in S and sequence of address formulas, specifying an order of their application. The last formula is set through iteration statements, the addressing programs, the conditional, unconditional and calculated transitions, etc.

In address language there are different steps depending on representation in the program of objects from which it is designed, by means of contents of addresses. The first step contains the elements of an original informatin and a tag set by means of addresses. At the second step of the address can be contents of addresses. At the third step characters one - and two-place operations can also be contents of addresses.

Yushchenko E. L. textbook. Address programming

Address language became a basis for development of the whole family of programming languages which differ on a set of operators, on symbolics, on levels of algorithmization of the operations of following entered into them in a set of addresses, degree of the objects necessary for designing of the program by means of contents of addresses. Therefore address language has levels, styles and steps.

Degree of orderliness of addresses and algorithmization of the operations of following entered into them determines the level of address language. Levels happen: all-algorithmic, level of conditional addresses and level of specific addresses

All-algorithmic. On it the set of addresses, most natural to a programmable task, is accepted. In certain cases (if that is demanded by a task) enter following operations which are described by the general mathematical means (indexes, etc.)

Level of conditional addresses. In this case there is an ordering of addresses only proceeding from requirements of a task. There is a streamlining of separate arrays of addresses which are processed by algorithm. All other questions connected with the actual distribution of memory — are not solved. As a rule arrays are provided by arithmetic sequences of addresses. The sequences determined by different starting addresses not crossed. Respectively and operations of following are described algorithmically. Operation of following on indexes for the array elements located in the lines since the address a0 + 1, has an appearance a0 + (i — 1) n + j where n — a matrix order.

Level of specific addresses. Assumes algorithm execution by the specific machine, resolving issues of determination of true operations of following. In this case the set of addresses is completely arranged (except for program registers).

Address language allows to pass from level to level, beginning from the most abstract algorithmic language and finishing with complete address allocation for this machine. Style of language is defined by the choice of the alphabet, a set of elementary operations and admissible formulas. There are languages of publications, machine styles, records of algorithms (differ from machine in coding), input languages of specific translators.

Distinguish language of publications, input languages of specific translators, machine styles, record of algorithms in which differs from machine record only in coding.

In address language it is possible to describe any schemes of a survey of information, economic and difficult datalogical algorithms, processes of search and viewing of information which is organized in chain lists. In this plan it has a benefit before the algorithmic languages created by the abroad for list processing of character expressions. One more plus of address language is the possibility of the description of algorithms what not to make by means of ALGOL language (such processes are described only with attraction of additional resources).

Important feature of address language is natural interpretation as the TsVM internal languages. The researcher can make specific computer-oriented languages using the device of address algorithms as convenient system of concepts for the description of algorithms and element structures of TsVM. The same can be done for the description of translators and interpreters of programming languages.

Address programming very much helped with development of structure and an instruction set of such Soviet computers as: "Dnieper", "Kiev", M20, "Ural", "Minsk". As for hardware implementation of the mechanism of displacement deferred addressing in "Kiev", it is one of the first examples of influence of theoretical programming on design of architecture and element base of computers. Besides, as it was already told, means of address language were a part of the subsequent programming languages oriented to the description of algorithms of broadcasting.

Computer Kiev (1958)

It is possible to tell with confidence that creation of address language became one of the first significant achievements of school of sciences of theoretical programming. And, not only in the USSR. Address language outstripped emergence of assemblers and programming languages with the device displacement deferred addressing. On this language textbooks in the different countries are published (Germany, France, Hungary, Austria, Slovakia).