Numerical control of machines — NC processor input — Basic part program reference language

Defines a higher-level symbolic part-programming language which is processed by a digital computer to produce a NC machine program. Annex A gives rules for representing the RL on punched cards; annex B contains syntax description on the reference language; a list of recommended synonyms is given in annex C; annex D includes an alphabetical list of major words and locations.

Commande numérique des machines — Données d'entrée des processeurs CN — Langage de référence de base pour programme de pièce

La présente Norme internationale définit un langage symbolique de niveau supérieur de programmation de pièce, traité par un calculateur numérique pour produire un programme-machine de commande numérique. Ce langage s'applique principalement aux machines-outils à commande numérique. C'est un langage de référence, ce qui ne veut pas nécessairement dire que l'ensemble du langage doit être rendu effectif. Des parties, ou «sous ensembles» du langage pourront être rendus effectifs pour s'adapter à des circonstances particulières.

General Information

Status
Published
Publication Date
18-Dec-1985
Current Stage
9093 - International Standard confirmed
Completion Date
28-Jun-2023
Ref Project

Buy Standard

Standard
ISO 4342:1985 - Numerical control of machines -- NC processor input -- Basic part program reference language
English language
278 pages
sale 15% off
Preview
sale 15% off
Preview
Standard
ISO 4342:1985 - Commande numérique des machines -- Données d'entrée des processeurs CN -- Langage de référence de base pour programme de piece
French language
278 pages
sale 15% off
Preview
sale 15% off
Preview
Standard
ISO 4342:1985 - Commande numérique des machines -- Données d'entrée des processeurs CN -- Langage de référence de base pour programme de piece
French language
278 pages
sale 15% off
Preview
sale 15% off
Preview

Standards Content (Sample)

International Standard
INTERNATIONAL ORGANIZATION FOR STANDARDIZATION.ME)I(fiYHAPOIiHAR OPrAHM3ALWlR fl0 CTAH~APTkl3AL&Wl.ORGANISATION INTERNATIONALE DE NORMALISATION
Numerital control of machines - NC processor input -
Basic part program reference language
Commande numkrique des machines - Donnees d’entrhe des processeurs CN - Langage de reference de base pour Programme
de pi&ce
First edition - 1985-12-15
Ref. No. ISO 43424985 (E)
UDC 681.323 : 621.9-52 : 681.3.06
numerical control, programming kornputers), prcgramming languages.
Descriptors : machine tools, automation, data processing,
Price based on 278 pages

---------------------- Page: 1 ----------------------
Foreword
ISO (the International Organization for Standardization) is a worldwide federation of
national Standards bodies (ISO member bodies). The work of preparing International
Standards is normally carried out through ISO technical committees. Esch member
body interested in a subject for which a technical committee has been established has
the right to be represented on that committee. International organizations, govern-
mental and non-governmental, in liaison with ISO, also take patt in the work.
Draft International Standards adopted by the technical committees are circulated to
the member bodies for approval before their acceptance as International ‘Standards by
the ISO Council. They are approved in accordance with ISO procedures requiring at
least 75 % approval by the member bodies voting.
International Standard ISO 4342 was prepared by Technical Committee ISO/TC 184,
Industrial automa tion s ystems.
Users should note that all International Standards undergo revision from time to time
and that any reference made herein to any other International Standard implies its
latest edition, unless otherwise stated.
0 International Organkation for Standardization, 1985 0
Printed in Switzerland
ii

---------------------- Page: 2 ----------------------
Contents
Page
0 Introduction. 1
2
1 Scope and field of application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 References. 2
2
3 Coordinate System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3
4
Language structure. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3
4.1 General comments. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
................................................ 4
....... :
4.2 Letters
5
4.3 Digits .
.............................................. 6
4.4 Special characters
7
Characters .
4.5
....................................... 8
Symbol for literal delimiter
4.6
.......................................... 9
4.7 Litera1 Character string
............................................. 10
4.8 Unsigned numbers
11
4.9 Keywords .
............................................... 12
4.10 Simple identifiers
..................................................... 13
4.11 Identifiers
14
4.12 Labels .
................................................... 15
4.13 Statements.
16
4.14 Nesting .
.................................................. 17
4.15 Part program
................................................ 18
5 Arithmetic Statements
18
.............................................
5.1 General comments.
20
............................................
5.2 Arithmetic Operators
............................................ 21
5.3 Arithmetic functions
27
.........................................
6 Program definition Statements
.............................................. 27
6.1 Generalcomments
................................... 28
6.2 Thesynonym Statement; SYN/
............................
29
6.3 Reservation for subscripting; RESERV/
30
.................................
6.4 Definitionofamacro;MACRO/.
. . .
Ill

---------------------- Page: 3 ----------------------
......................................... 32
7 Program execution Statements
........................................... 32
7.1 Part program control
....................... 33
7.2 Part program identification and termination.
....................... 35
Machine and no-postprocessing Statements
7.3
....................................... 37
Input/output Statements
7.4
.............
42
7.5 Loop Start and end Statements and transfer Statements.
........................... 46
7.6 Copy Statement and index specification
..................................... 49
7.7 Macro execution Statement
............................................. 50
7.8 Remark Statement
.................................. 51
7.9 Postprocessing print Statement
52
8 Geometrical definitions Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
............................................
52
8.1 General comments.
................................ 54
8.2 Declarations of reference System.
....................................... 57
8.3 Declarations of z-surface
.......................................... 64
8.4 Definitions of a Point.
Definitions of a Pattern of Points . 80
8.5
99
Definitions of a line .
8.6
..........................................
Definitions of a plane. 118
8.7
.......................................... 127
8.8 Definitions of a vector
.......................................... 138
8.9 Definitions of a circle.
........................................ 159
8.10 Definitions of a cylinder
......................................... 164
8.11 Definitions of a sphere
........................................... 170
8.12 Definitions of a cone
8.13 Definitions of an ellipse . 173
....................................... 175
8.14 Definitions of a hyperbola
..................................... 177
8.15 Definitions of a lofted conic
..................................... 181
8.16 Definitions of general conic
.................................. 185
8.17 Definitions of a general quadric
8.18 Definitions of a tabulated cylinder . 189
8.19 Definitions of a matrix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
8.20 Definitions of a ruled surface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
iv

---------------------- Page: 4 ----------------------
9 Geometrie execution Statements .
209
9.1 General comments .
?. . 209
..............................................
9.2 General semantics 210
9.3 Continuous motion Statement .
220
.............................................
9.4 Motion Statements 225
.....................................
9.5 Tool path control Statements 233
9.6 Startup direction control Statements . 243
9.7 Transform Cutter location Statements. . 247
9.8 Processor output file control Statement .
248
Annexes
A Rules for representing the RL on punched cards . 249
B Syntax description of the reference language . .250
C List of recommended Synonyms . .272
D Alphabetical list of major words and locations . 273

---------------------- Page: 5 ----------------------
This page intentionally left blank

---------------------- Page: 6 ----------------------
INTERNATIONAL STANDARD ISO 43424985 (El
Numerital control of machines - NC processor input -
Basic part program reference language
encompasses the use of Workshop technology will described
0 Introduction
in an addendum to this International Standard.
0.1 General features
02 . Numerital control reference language
0.1.1 A part program is an ordered set of instructions in a
language and in a format required to Cause the generation and
commands for operations to be carried out under numerical
0.2.1 The numerical control (NC) reference language (RL) is a
control (NC). The instructions of the language are processed
problem-oriented language developed for the machining of
sequentially in two stages, processor and postprocessor. The
Parts. lt is similar to scientific programming languages, and
processor Stage is substantially independent of the numerically
contains many of the facilities and a large part of the compu-
controlled machine, and the postprocessor Stage takes
tational ability of these; additionally the RL provides for both
account of the features of the machine and control System to
the description of shapes and commands for movement of the
be numerically controlled.
machine.
0.1.2 Numerital control is applied to many types of machine,
0.2.2 The RL is written in lines, and for the purpose of
but the language defined in this International Standard has
describing the RL, the level of communication assumed is the
been developed primarily for numerically controlled machine
manuscript Stage of programming. There is no special
tools - hence the words “Cutter” or “tool”, and “workpiece”
Character for Statement termination, but there is a special
or “part”, are used in the description of the language to
Character to signify that a statemerlt continues from one line to
indicate the working element and processed element respec-
the next. This concept permits th:: description of the RL itself
tively. Many of the reserved words of the language are also
to be distinguished from the rules for representation of the RL
derived from metalworking terminology.
on various media such as punched cards or Paper tape. The
rules for representing the RL on punched cards are given in
0.1.3 This International Standard is partly informative and
annex A. The Syntax description of the reference language is
partly definitive, with the intention of enabling unsophisticated
given in annex B.
users and potential users to discuss and define their
requirements with suppliers. The formal Syntax description of
0.2.3 The RL is a symbolic language; that is, an entity may be
the language has been included to aid implementers.
assigned to a symbolic name and the entity referenced later in
the part program by that symbolic name. For other than
0.1.4 The language described in this International Standard is
arithmetical values a symbolic name may not normally be
a reference language (RL). lt has been divided into logical
reassigned.
pages according to the type of Statement or facility, with the
intention that each logical page will become a unit of further
standardization work. lt is also intended that each logical page
0.2.4 Unlike scientific programming languages there are no
is suitably identified as belonging to the core or a module of the
explicit or implicit type aSSociatkJnS in the RL. The type of
total reference language.
entity is determined by the type of Statement in which the
entity is defined.
0.1.5 The output from the processor (CLDATA - derived
from the term “Cutter location data”), which is also input to the
0.2.5 The arithmetical type of er-tity has always a real value,
postprocessor, is the subject of separate standardization
that is, it is an approximate representation of a real number. lt
documents. The definition of CLDATA effectively encom-
has an integer part and a fractionai part and tan only represent
Passes the part programming language necessary for using
a certain number of the most significant digits of the number,
capabilities of the postprocessor, and the CLDATA Standard
depending on the implementation.
ISO 3592 is the Prime reference Source for this part of the total
language.
0.2.6 A significant feature of the RL is the “nesting” facility,
0.1.6 Some processors may interface with Workshop by which an entity may be defined in parenthesis instead of
technology processors. That part of the total language which using a symbolic name.

---------------------- Page: 7 ----------------------
ISO 4342-1985 (EI
3.2 The coordinate System is a right-handed rectangular
1 Scope and field of application
related to a workpiece mounted on a
Cartesian System,
machine and aligned with the principal linear slideways of that
This International Standard defines a higher-level symbolic
machine. The positive direction of movement of a component
Part-programming language which is processed by a digital
Computer to produce a NC machine program. of a machine is that which Causes an increasing positive dimen-
sion on the workpiece.
The language has been developed primarily for numerically
controlled machine tools. lt is a reference language, which
3.3 In the RL, the reference axes of the coordinate System
means that it is not necessarly intended that the whole of the
are X, Y and 2. These are used in the description of the
language be implemented. lt s expected that Parts, or subsets,
workpiece and it is assumed that the workpiece is stationary,
of the language will be ;mplemented to suit particular
with the tool or Cutter moving relative to the workpiece
circumstances.
coordinate System whether or not this is true for the actual NC
machine tool Operation.
2 References
34 . When specifying angles of planes the positive direction
cou nterclockwise and the reference axis is as follows :
ISO 646, Information processing - /SO 7-bit coded Character
set for information processing interchange.
Plane Reference axis
Axis and motion
ISO 841, Numerital control of machines -
XY
nomenclature.
YZ
zx
processor out-
ISO 3592, Numerital control of machines - NC
- Logical structure (and major words).
Put
3.5 The positive direction of angle is counterclockwise from
the reference axis.
ISO 4343, Numerital control #?f machines - NC processor out-
put - Minor elements of XWtype records (post-processor
commands).
3.6 Angles are expressed in degrees and decimal f ractions of
a degree.
3 Coordinate System
3.7 The output from the processor (CLDATA) uses the same
conventions as the RL, and the output coordinates refer to a
reference Point on a Cutter (usually the centre of the tip) relative
3.1 ISO 841 is the basis for defining the coordinate System of
to the workpiece coordinate System used in the part program.
the RL.

---------------------- Page: 8 ----------------------
ISO 4342-1985 (EI
4 Language structure
4.1 General comments
4.1 .l General semantics
Digits and letters are used to create unsigned numbers and keywords which in conjunction with characters and special characters may
be used to create identifiers, labels and literal Character strings. Any valid combination, if existing, may be used to construct a state-
ment and a number of Statements arranged in a specific Order constitutes a part program.
4.1.2 Sub-contents
For
1) letters, see 4.2;
2) digits, see 4.3;
special characters, see 4.4;
3)
characters, see 4.5;
4)
Symbol for literal delimiter, see 4.6;
5)
literal Character string, see 4.7;
6)
unsigned numbers, see 4.8;
7)
8) keywords, see 4.9;
9) simple indentifiers, see 4.10;
identifiers, see 4.11;
10)
labels, see 4.12;
11)
12) Statements, see 4.13;
13) nesting, see 4.14;
14) part program, see 4.15.
4.1.3 Limitations
None.
4.1.4 Syntax
k
< language structure > : : = { I [ < letters > < digits > < special characters > < characters >
< Symbol for Iiteral delimiter > < literal Character string > < unsigned numbers >
< keywords > < simple identifiers > < labels > < Statements > < nesting >
< part program > ] >
3

---------------------- Page: 9 ----------------------
ISO 43424985 (El
4.2 , Letters
4.2.1 Semantics
Letters have no individual meaning, being used for forming keywords, simple identifiers, Character strings or labels.
4.2.2 Limitations
None.
4.2.3 Syntax
< letter > : : =
~/~I~I~I~I~I~l~I~lJl~I~I~I~I~I~IQI~lSI~l~l~l~I~I~I~

---------------------- Page: 10 ----------------------
ISO 4342-1985 (E)
4.3 Digits
4.3.1 Semantics
Digits have no individual meaning, being used for forming simple identifiers, unsigned numbers, Character strings or labels.
4.3.2 Limitations
None.
4.3.3 Syntax
< digit > : : = 0~1~2~3)41516~7~8~9
5

---------------------- Page: 11 ----------------------
ISO 4342-1985 (EI
4.4 Special characters
4.4.1 Semantics
Special characters are usec! as Operators for building up arithmetic expressions and as punctuation marks (or separators) in
Statements. When special zharacters are used in literal Character strings they are treated as characters with no syntactical
significance.
+ -*/t arithmetic Operators (sec 5.2).
Statement with opening parenthesis
closing used as a label separator (sec 4.11) or in connection
nesting
opening parfnthesis, used with closing parenthesis in subscripting or nesting, or function arguments.
/
. decimal Point.
=
equals, used for assigning an entity to a name.
slant, used as a separator between a major keyword and the remainder of a Statement.
/
comma, used as a separator between elements of a Statement.
Statement Iahe1 separator (see 4.11).
$ dollar or otht?r currency Character used to couple Statements and delimit the Start of a comment field.
semi-colon, used as a separator between Statements.
apostrophe, used for delimitation of a Character string.
The space Character has no significance except in Character strings.
4.4.2 Limitations
None.
4.4.3 Syntax
< special Character > : : =
- I*I + l*l~l’l= l(l)lSl~~;l:~’
NOTE - $ is given as an example of a national currency Character.

---------------------- Page: 12 ----------------------
ISO 4342-1985 (El
4.5 Characters
4.51 Semantics
A Character is a letter, digit or special Character or other valid Character.
4.5.2 Limitations
None.
4.5.3 Syntax
< Character > : : = < letter > 1 < digit > 1 < special Character > 1 < other valid Character >
- Other valid characters have no significance within the language but are nevertheless considered as valid input. These characters are not
NOTE
otherwise defined in this International Standard. They should be manageable by the specific implementation and be selected from the Character set
defined by ISO 646 and ISO 840.
7

---------------------- Page: 13 ----------------------
ISO 43424985 EI
4.6 Symbol for literal delimiter
4.6.1 Semantics
the extent of the literal string field.
beginning and at the end of a literal Character string to
The apostrophe is used at the
4.6.2 Example
PARTNO/‘VALVE HOUSING’
4.6.3 Limitations
None.
4.6.4
Syntax
< Symbol for literal delimiter > : : = ’
8

---------------------- Page: 14 ----------------------
ISO 4342-1985 (El
4.7 Litera1 Character string
4.7.1 Semantics
A literal Character string may be used in Statements, for listing text, or in the postprocessor Statements such as INSERT for passing
special information through to the postprocessor on the CLDATA. The set of characters permissible is not limited to the set of letters,
digits, and special characters defined in this International Standard. Within a literal Character string, ani’special characters are treated
simply as characters without syntactical significance.
4.7.2 Example
Pl = POINT/O,O,O ‘COMPONENT DATUM’
4.7.3 Limitations
None.
4.7.4 Syntax
< Symbol for literal delimiter > 0” [ < Character > ] < Symbol for lateral delimiter >
< literal Character string > : : =
NOTES
1 The Syntax of a literal Character string implies that the empty string is allowed.
2 Spate characters are significant.
3 A remark (comment) following a Single or double currency Character need not be a delimited Character string.
4 A literal Character string not terminated by a closing apostrophe Prior to an arbitrary line limit (for example the card column 73 in annex A) is con-
tinued on the next line without the need for a currency Character.
5 An apostrophe is represented by two apostrophes in a Character string delimited by apostrophes.
9

---------------------- Page: 15 ----------------------
ISO 43424985 (El
4.8 Unsigned numbers
4.8.1 Semantics
Point. If no decimal Point is included in the
Numbers have their usual meaning, being built up of decimal digits and may have a decimal
it is assumed to
number, apgear after the rightmost digit.
4.8.2 Examples
47711
58.
3.14 f
4.8.3 Limitations
There is no defined limit to the number of digits within a number, the limit being implementation dependent. No distinctions are made
between integer and real numbers since all are used internally in the real mode. In every case where an integer value is required (for
example in a subscript) the *fractional patt of the real value is truncated.
are used necessary to achieve
Number representation within a Computer is not necessarily exact. Therefore, approximations
the effect of exact operations These approximations are Computer dependent.
4.8.4 Syntax
< unsigned number : : : = : [ < digit > 1 [.] 1: [ < digit > 1 . : [ < digit > 1
10

---------------------- Page: 16 ----------------------
ISO 43424985 (EI
4.9 Keywords
4.9.1 Semantics
Keywords have a fixed meaning within the language. They may be regarded as entries in a vocabulary list.
The set of keywords is not fixed but may be enlarged in future revisions of this International Standard.
Keywords do not have the role of delimiters, in contrast to some scientific mming languages for example, as two adjacent
keywords have to be separated from each other by a special Character.
Keywords are divided into two classes, the major keywords which define the type of the Statement, and the minor keywords which
: the processor and the postprocessor keywords.
give additional information. These classes tan be divided into two subclasses each
Postprocessor keywords are listed and defined in ISO 4343. An alphabetical Iist of all keywords is given in annex D.
4.9.2 Examples
POINT
INTOF
4.9.3 Limitations
Keywords consist only of letters and have at least two letters.
4.9.4 Syntax
< keyword > : : = !j[l
11

---------------------- Page: 17 ----------------------
ISO 43424985 (EI
4.10 Simple identifiers
4.10.1 Semantics
Simple identifiers have no inherent meaning and are used only as specificators (see 8.1.4)’ labels or arithmetic symbols.
4.10.2 Examples
P2
Ll
BOBBY1
4.10.3 Limitations
A simple identifier shall not be redefined within a part program except when used as an arithmetic Symbol. lt is recommended that
processors should not accept keywords as simple identifiers. A simple identifier, unless used as a synonym, of more than one letter
should contain a digit.
4.10.4 Syntax
< simple identifier > : : = < letter > g [ < letter > 1 < digit >]
12

---------------------- Page: 18 ----------------------
ISO 4342-1985 (E)
4.11 Identifiers
4.11.1 Semantics
An identifier is similar to a simple identifier but normally a su bscript.
4.11.2 Examples
Pm 1
PZ(5)
4.11.3 Limitations
An identifier shall not be redefined within a part program except when used as an arithmetic Symbol.
4.11.4 Syntax
< identifier > : : = < simple identifier > A [( < scalar > 11
13

---------------------- Page: 19 ----------------------
4.12 Labels
4.12.1 Semantics
rammer label to a Statement for Statement identif ication . The label may be referred to in a conditional or un-
A part prog may attach a
conditional transfer Statement or a geometric transfer Statement.
4.12.2 Example
Al) GOTO/Pl
or alternatively Al : GOTO/Pl
where Al .is the label.
4.12.3 Limitations
4.12.4 Syntax
< label> : : = fi [ < digit > ] 1 < simple identifier >
4.12.5 Cross-reference (see annex D)
IF
JUMPT0
TRANTO
14

---------------------- Page: 20 ----------------------
ISO 4342-1985 (EI
4.13 Statements
4.13.1 Semantics
A Statement is a complete instruction or unit of information comparable with a sentence in a natura1 language. A Statement consists
of a Single keyword or a syntactically defined sequence of elements separated by special characters. These elements are keywords,
simple identifiers, unsigned numbers and Character strings.
There are several types of Statement, grouped for convenience of description into the following five main clauses of this International
Standard : clause 5 arithmetic, clause 6 program definition, clause 7 program execution, clause 8 geometrical definition and clause 9
geometric execution.
labelled or unlabelled. Wherever a keyword is within a Statement, it may be replaced previously
Statements may be
bY a
defined synonym.
Everywhere within a macro where a keyword, a simple identif ier, or unsigned number, is allowed, it may be replaced declared
bY a
macro Parameter name.
4.13.2 Limitations
4.13.3 Syntax
’ [ < label > [) 1 :]] < unlabelled Statement >
< Statement > : : = O
< arithmetic Statement > 1 < program definition Statement > 1
< unlabelled Statement > : : =
< program control Statement > 1 < geometrical definition Statement > 1
< geometrical execution Statement >
15

---------------------- Page: 21 ----------------------
Iso 4342-1985 (EI
4.14 Nesting
4.14.1 Semantics
Any unlabelled arithmetic Statement or unlabelled geometrical definition Statement may be nested.
The Statement is written between the opening and closing parentheses. Wherever a simple identifier may appear, it is possible to nest
the full Statement with a simple identifier which may be referenced later in the part program, or to nest the Statement without a simple
identifier or equals Character. The three alternatives
a) simple identifier,
b) nested Statement without simple identifier,
nested Statement with simple identifier,
c)
is valid, the term “circle specificator” is
are included in the term “specificator”. For example, where an entity of the type “circle”
used.
4.14.2 Example
The Statements
PT4 = POINT/3,6
PT6 = POINT/8,9
L2 = LlNE/PT4, PT6
may be written as
L2= LINEI(PT4 = POlNT/3,6), (POINT/8,9)
4.14.3 Limitations
None.
16

---------------------- Page: 22 ----------------------
ISO 4342-1985 (E)
4.15 Part program
4.15.1 Semantics
processing a part pr is to produce a
A part program is a logically CO mplete and ordered sequence of sta temen ts and the result of
ordered machine control program.
correspondingly complete and
identification state-
A part program consists of a part program Statement, a sequence of Statements and a part program termination
ment.
4.15.2 Limitations
4.15.3 Syntax
< part program > : : = < part program identification Statement > 0 [ < Statement > 1
< part program termination Statement >

---------------------- Page: 23 ----------------------
ISO 43424985 (El
5 Arithmetic Statements
51 . General comments
5.1 .l General semantics
The arithmetic features of the language allow a wide range of algebraic expressions to be evaluated within a part program. In general,
the Operators used in part program arithmetic are those used in conventional algebra, the exception being the algebraic multipli-
cation x which is replaced by *.
converted
Conventional algeb ra allows a description to occupy more than one line. Since this is not conven iently into suitable com-
language.
Puter input, this is not allowed in the Part-program
For example :
1+2+3
A=
4
allowable in algebra has to be converted to :
A= (1 + 2 + 3)/4
before use in the Part-program language. For the same reason it is found necessary to introduce an exponential Operator (** or t) into
the Part-program language so that
.
A = 23
is written as
= 2**3 or A = 2 t 3
A
Throughout, normal mathematical Iimitations apply, for example in using SQRT (A), A shall have a positive value or in using ASIN
(B), B shall ave a value lying between + 1.
h
The Character = is used in arithmetic Statements, but may not have the meaning “equals” which it has in algebra. In part program
arithmetic this Character should be read as “is replaced by” or “is given the value of”. lt is therefore permissible to write A = A + 1
which means that one is to be added to the value of A, and A now given the value of the result.
Normal algebraic Operation priorities apply. For example, in the Statement A = 2 + 3*4, the * Operation will be performed before the
+ Operation. Brackets tan be used in arithmetic Statements and as in algebra may alter the sequence in which operations are carried
out. If, for example, the above Statement is written as A = (2 + 3)*4 the + Operation is performed before the * Operation.
The implied multiplication feature of algebra is not allowed. For example A = 5(B + 2) which is permissible in algebra shall be
written as A = 5*(B + 2).
The hierarchy of operational priorities is as follows :
Priority 1 ( )
**
2 J
.
3
*fl
4 +,-
numeric and may be approximations to the real
In the examples given later in this clause, the values shown are for illustration
OnlYr
values
5.1.2 Sub-contents
For
1) arithmetic Operators, see 5.2;
2) arithmetic functions, see 5.3;
3)
the algebraic functions, see 5.3.2;
4) the trigonometrical functions, see 5.3.3;
5) the exponential functions, see 5.3.4;
6) the vector functions, see 5.3.5;
7) the miscellaneous functions, see 5.3.6.
18

---------------------- Page: 24 ----------------------
ISO 4342-1985 (El
5.1.3 Limitations
5.1.4 Syntax of ar
...

Norme internationale @ 4342
~ ~ ~ ~~ ~~ ~~
INTERNATIONAL ORGANIZATION FOR STANDARDIZATION*MEMAYHAPOflHAR OPTAHMBAUMR no CTAHAAPTM3AUt4M*ORGANlSATlON INTERNATIONALE DE NORMALISATION
Commande numérique des machines - Données d‘entrée
des processeurs CN - Langage de référence de base pour
programme de pièce
Numerical control of machines - NC processor input - Basic part program reference language
Premiere édition - 1985-12-15
Réf. no : IS0 4342-1985 (FI
CDU 681.323 : 621.9-52 : 681.3.06
1
Descripteurs : machine-outil, automatisation, traitement de l’information, commande numérique, programmation des calculateurs, langage de
!
! programmation.
?
:
Prix basé sur 278 pages

---------------------- Page: 1 ----------------------
Avant-propos
L‘ISO (Organisation internationale de normalisation) est une fédération mondiale
I’ISO). L’élaboration
d’organismes nationaux de normalisation (comités membres de
des Normes internationales est confiée aux comités techniques de I’ISO. Chaque
comité membre intéressé par une étude a le droit de faire partie du comité technique
créé A cet effet. Les organisations internationales, gouvernementales et non gouverne-
mentales, en liaison avec I’ISO, participent également aux travaux.
Les projets de Normes internationales adoptés par les comités techniques sont soumis
aux cornites membres pour approbation, avant leur acceptation comme Normes inter-
nationales par le Conseil de I’ISO. Les Normes internationales sont approuvées confor-
mément aux procédures de I’ISO qui requièrent l’approbation de 75 % au moins des
comités membres votants.
La Norme internationale IS0 4342 a été élaborée par le comité technique ISO/TC 184,
Syst6mes de traitement de l’information se rapportant B l’automatisation industrielle.
L‘attention des utilisateurs est attirée sur le fait que toutes les Normes internationales
sont de temps en temps soumises B révision et que toute référence faite A une autre
Norme internationale dans le présent document implique qu’il s’agit, sauf indication
contraire, de la dernière édition.
0 Organisation internationale de normalisation, 1985 O
Imprime en Suisse
ii

---------------------- Page: 2 ----------------------
Sommaire
Page
O Introduction . 1
1 Objet et domaine d'application . 2
2 Références . 2
3 Système de coordonnées . 2
4 Structuredelangage . 3
4.1 Commentaires généraux. . 3
4.2 Lettres . 4
4.3 Chiffres . 5
4.4 Caractères spéciaux . . 6
4.5 Caractères . . 7
4.6 Symbole pour délimiteur littéral . 8
4.7 Chaîne de caractères littéraux . 9
4.8 Nombresnonsignés .
4.9 . 11
4.10 Identificateurs simples . 12
4.11 Identificateurs . 13
Labels . . 14
4.12
4.13 Instructions . 15
4.14 Emboîtement . 16
4.15 Programme de pièce . 17
5 Instructions arithmétiques
5.1 Commentaires genéraux . 18
5.2 Opérateurs arithmétiques . 20
5.3 Fonctions arithrnetiques . 21
6 Instructions de définition d'un programme
6.1 Commentaires généraux . 27
6.2 L'instruction synonyme; SYN/ . 28
6.3 Reservation d'indice; RESERVI . 29
Définition d'une macro-instruction; MACRO/ . 30
6.4
...
111

---------------------- Page: 3 ----------------------
7 Instructions d'exécution d'un programme
7.1 Commande d'un programme de pièce . 32
7.2 Instructions d'identification et de fin d'un programme de pièce . 33
7.3 Instructions de machine et de non traitement par le post-processeur . 35
7.4 Instructions d'entrée/sortie . 37
7.5 Instructions de début et fin de boucles et instructions de transfert . 42
7.6 Instruction COPY et désignation d'index . 4.6
7.7 Instruction d'exécution d'une macro-instruction . 49
7.8 Instruction de remarque . 50
7.9 Instruction d'impression par le post-processeur . 51
8 Instructions de définitions géométriques
8.1 Commentaires généraux . 52
8.2 Déclarations de système de référence (REFSYS) . 54
8.3 Déclarations de surface-z (ZSURF) . 57
8.4 Définitions d'un point (POINT) . 64
8.5 Définitions d'une structure de points (PATTERN) . 80
8.6 Définitionsd'une ligne (LINE) . 99
8.7 Définitions d'un plan (PLANE) . 118
8.8 Définitions d'un vecteur (VECTOR) . 127
8.9 Définitions d'un cercle (CIRCLE) . 138
8.10 Définitions d'un cylindre (CYLNDR) .
8.11 Définitions d'une sphere (SPHERE)
8.12 Définitions d'un cane (CONE)
8.13 Définition d'une ellipse (ELLIPS) . 173
8.14 Définition d'une hyperbole (HYPERB) . 175
8.15 Définitions d'une conique graphique (LCONIC) . 177
8.16 Définitions d'une conique générale (GCONIC) . 181
8.17 Définition d'une quadrique générale (QADRIC) . 185
8.18 Définitions d'un cylindre tabulé (TABCYL) . 189
8.19 Définitions d'une matrice (MATRIX) . 194
8.20 Définitions d'une surface réglée (RLDSRF) . 206
IV

---------------------- Page: 4 ----------------------
9 Instructions d'exécution géométrique
9.1 Commentaires généraux . 209
9.2 Sémantique générale . 210
9.3 Instruction de mouvement continu . 220
9.4 Instructions de mouvement . 225
9.5 Instructions complementaires de la trajectoire de l'outil . 233
9.6 Instructions de direction de depart . 243
9.7 Instruction de transformation des positions de l'outil . 247
9.8 Instruction de commande du fichier de sortie du processeur . 248
Annexes
A RBgles pour la représentation du LR sur des cartes perforées . 249
B Description de la syntaxe du langage de référence . 250
C Liste de synonymes recommandés . 273
D Liste alphabétique des mots-clés et des positions . 274
V

---------------------- Page: 5 ----------------------
IS0 4342-1985 (FI
NORM E I NTE R NATIONALE
Commande numérique des machines - Données d’entrée
des processeurs CN - Langage de référence de base pour
programme de pièce
O Introduction du langage qui contient l’utilisation de la technologie d’atelier
sera décrite dans l’additif de la présente Norme internationale.
0.1 Généralités
0.2 Langage de référence de la commande
0.1.1 Un programme de pièce est un ensemble ordonné d’ins-
numérique
tructions dans un langage et un format permettant d‘obtenir la
génération et le contrôle d’opérations à exécuter par une com-
mande numérique (CN). Les instructions du langage sont trai-
0.2.1 Le langage de référence (LR) de la commande numéri-
tées séquentiellement en deux phases, processeur et post-
que ICN) est un langage adapté aux problèmes, développé
processeur. La phase processeur est complètement indépen-
pour l‘usinage des pièces. Il est semblable aux langages de pro-
dante de celle de la machine commandée numériquement, et la
grammation scientifiques, et contient un grand nombre de leurs
phase post-processeur tient compte des caractéristiques de la
facilités et une grande partie de leurs possibilités de calcul. En
machine et du système de commande numérique.
outre, le LR pourvoit à la fois à la description des formes et à
celle des commandes des mouvements de la machine.
0.1.2 La commande numérique s’applique à de nombreux
types de machines, mais le langage défini dans la présente
0.2.2 Le LR est écrit en lignes et, dans le but de décrire le LR,
Norme internationale a été étudié principalement pour les
le niveau de communication adopté est l’étape manuscrite de la
machines-outils à commande numérique. Désormais, les mots
programmation. II n’y a pas de caractère spécial pour la fin de
((coupe)) ou ((outil)) et les mots ((pièce usinée)) ou ((pièce)) sont
l‘instruction, mais il existe un caractère spécial pour signifier
utilisés dans la description du langage afin d’indiquer à la fois
qu’une instruction se poursuit sur la ligne suivante. La descrip-
I’élément actif et I’élément traité. Bon nombre de mots réservés
tion du LR est différenciée des règles pour la représentation du
du langage dérivent également de la terminologie d‘usinage.
LR sur divers supports tels que les cartes perforées ou des ban-
des de papier, grâce à ce concept. Les règles de représentation
0.1.3 La présente Norme internationale est en partie indicative du LR sur cartes perforées sont données en annexe A. La des-
et en partie définitive afin de permettre aux utilisateurs simples cription de la syntaxe du langage de référence est donnée en
et aux utilisateurs potentiels de discuter et de définir leurs
annexe B.
besoins avec les fournisseurs. La description de la syntaxe for-
melle du langage a été incluse afin d‘aider les exécuteurs.
0.2.3 Le LR est un langage symbolique, c‘est-à-dire qu’une
entité peut recevoir ce nom symbolique, l’entité est référenciée
0.1.4 Le langage décrit dans la présente Norme internationale
ultérieurement dans le programme de pièce par ce nom symbo-
est un langage de référence (LR). Il a été divisé en ((pages)) logi-
lique. Pour d’autres valeurs que les valeurs arithmétiques, un
ques selon le type d‘instruction ou de possibilité, afin que cha-
nom symbolique ne peut normalement pas être utilisé.
que page logique soit une unité d’un nouveau travail de norma-
lisation. Chaque page logique doit être identifiée convenable-
0.2.4 A la différence des langages de programmation scientifi-
ment comme appartenant A un noyau ou à un module de
ques, il n’y a pas d’associations de type explicite ou implicite
l‘ensemble du langage de référence.
dans le LR. Le type de l’entité est déterminé par le type d‘ins-
truction dans lequel l‘entité est définie.
0.1.5 La sortie d‘un processeur (CLDATA, terme dérivé de
l‘expression ((cutter location data)) qui signifie ((données sur la
0.2.5 Le type arithmétique d‘entité a toujours une valeur
position de l’outil de coupen) est également une entrée post-
réelle, c‘est-à-dire qu‘il est une représentation approximative
processeur, et fait l‘objet de documents de normalisation dis-
tincts. La définition de CLDATA comporte effectivement le lan- d‘un nombre réel. II a à la fois une partie entière et une partie
fractionnaire et il peut ne représenter qu‘un certain nombre de
gage du programme de pièce nécessaire pour utiliser les possi-
chiffres les plus significatifs du nombre, selon la mise en
bilités du post-processeur; les normes de CLDATA (voir
IS0 3592) sont la principale source de référence pour cette par- œuvre.
tie de l‘ensemble du langage.
0.2.6 Un trait significatif du LR est la possibilité d’cremboîte-
0.1.6 Quelques processeurs peuvent avoir une interface avec
ment)), par laquelle une entité peut être définie entre parenthè-
les processeurs de technologie d’atelier. La partie de l‘ensemble ses au lieu d’utiliser un nom symbolique.
1

---------------------- Page: 6 ----------------------
IS0 4342-1985 (FI
1 Objet et domaine d’application 3.2 Le système normal de coordonnées est un système carté-
sien rectangulaire à sens direct lié à une pièce placée sur une
La présente Norme internationale définit un langage symboli- machine et aligné avec les glissières linéaires principales de la
que de niveau supérieur de programmation de pièce, traité par machine. Le sens positif du mouvement d’un composant de la
machine est celui qui provoque un accroissement positif de la
un calculateur numérique pour produire un programme-
dimension sur la pièce à usiner.
machine de commande numérique.
Ce langage s’applique principalement aux machines-outils à
3.3 Dans le LR, les axes de référence du système de coordon-
commande numérique. C‘est un langage de référence, ce qui
nées sont A’, Y et Z. Ils sont utilisés dans la description d’une
ne veut pas nécessairement dire que l’ensemble du langage doit
pièce à usiner; on suppose que la pièce à usiner est immobile,
être rendu effectif. Des parties, ou ((sous ensembles)) du lan-
avec l’outil ou l’outil de coupe se déplacant relativement au
gage pourront être rendus effectifs pour s’adapter à des cir-
système de coordonnées de la pièce à usiner, que cela soit vrai
constances particulières.
ou non pour le fonctionnement réel de la machine CN.
3.4 En spécifiant des angles dans un plan, le sens positif est
2 Références
le sens trigonométrique et l‘axe de référence est indiqué comme
suit :
IS0 646, Traitement de l’information - Jeu IS0 de caractbres
codés B 7 éléments pour l’échange d’information.
I Plan 1 Axe de référence I
IS0 841, Commande numérique des machines - Nomencla-
XY X
ture des axes et des mouvements.
1 E 1:
IS0 3592, Commande numérique des machines - lnforma-
tions de sortie des processeurs CN - Structure logique let
3.5 Le sens positif de l’angle est le sens trigonométrique à
mots majeurs).
partir de l‘axe de référence.
IS0 4343, Commande numérique des machines - hforma-
tions de sortie des processeurs CN - Eléments mineurs des
3.6 Les angles sont exprimés en degrés et en fractions déci-
(instruction post-processeur).
enregistrements de type 2
males de degré.
3.7 La sortie du processeur (CLDATA) utilise les mêmes con-
3 Système de coordonnées
ventions que le LR; les coordonnées de sortie se réfèrent à un
point de référence sur un outil de coupe (habituellement le cen-
La Norme internationale IS0 841 est la base de dbhition tre de la pointe) relativement au système de coordonnées de la
3.1
du système de coordonnées du LR. pièce à usiner utilisé dans le programme de pièce.
2

---------------------- Page: 7 ----------------------
IS0 4342-1985 (F)
4 Structure de langage
4.1 Commentaires généraux
4.1.1 Sémantique générale
Les chiffres et les lettres sont utilisés pour créer des nombres et des mots-clés non signés qui, conjointement avec des caractères et
des caractères spéciaux, peuvent être utilisés pour créer des identificateurs, des labels et des chaînes 'le caractères littéraux. Toute
combinaison valable, si elle existe, peut être utilisée pour établir une instruction, et un nombre d'instrLctions arrangé dans un ordre
spécifique constitue un programme de pièce.
4.1.2 Sommaire
lettres, voir 4.2;
chiffres, voir 4.3;
caractères spéciaux, voir 4.4;
caractères, voir 4.5;
symboles pour délimiteur littéral, voir 4.6;
chaînes de caractères littéraux, voir 4.7;
nombres non signés, voir 4.8;
mots-clés, voir 4.9;
identificateurs simples, voir 4. IO;
identificateurs, voir 4.11;
labels, voir 4.12;
instructions, voir 4.13;
emboîtement, voir 4.14;
programme de pièce, voir 4.15.
4.1.3 Limites
Aucune.
4.1.4 Syntaxe
k
< structure de langage > : : = { , [ < lettres > < chiffres > < caractères spéciaux > < caractères >
< symbole pour délimiteur littéral > < chaîne de caractère littérale >
< nombres non signés > < mots-clés > < identificateurs simples > < labels >
< instructions > < emboîtement > < programme de pièce > ] }
3

---------------------- Page: 8 ----------------------
IS0 4342-1985 (FI
4.2 Lettres
4.2.1 Sémantique
Les lettres n'ont aucune signification particulière, étant utilisées pour former des mots-clés, des identificateurs simples, des chaînes
de caractères ou des labels.
4.2.2 Limites
Aucune.
4

---------------------- Page: 9 ----------------------
IS0 4342-1985 (FI
4.3 Chiffres
4.3.1 SBmantique
Les chiffres n’ont aucune signification particulière, étant utilisés pour former des identificateurs simples, des nombres non signés, des
chaînes de caractères ou des labels.
4.3.2 Limites
Aucune.
4.3.3 Syntaxe
:: = 011/21314151617)8/9
5

---------------------- Page: 10 ----------------------
IS0 4342-1985 (FI
4.4 Caractères spéciaux
4.4.1 Sémantique
Les caractères spéciaux sont utilisés en tant qu'opérateurs pour créer des expressions arithmétiques et en tant que caractères de
ponctuation (ou séparateurs) dans les instructions. Lorsque des caractères spéciaux sont utilisés dans des chaînes de caractères litté-
raux, ils sont traités comme des caractères sans signification syntaxique.
+ - * / t opérateurs arithmétiques (voir 5.2).
parenthèse fermée, utilisée comme un séparateur de label d'instruction (voir 4.1 1) ou en connection avec la paren-
)
thèse ouverte pour des emboîtements.
parenthèse ouverte, utilisée avec la parenthèse fermée dans des indices, des emboîtements ou des arguments de
(
fonction.
, point décimal.
=
signe égal, utilisé pour assigner une entité à un nom.
/ barre oblique, utilisée comme séparateur entre un mot-clé majeur et le reste d'une instruction.
virgule, utilisée comme séparateur entre les éléments d'une instruction.
,
: deux points, séparateur de label d'instruction (voir 4.1 1 ).
dollar ou autre caractère de monnaie, utilisé pour associer les instructions et délimiter le début d'un commentaire.
$
point virgule, utilisé comme séparateur d'instruction.
;
'
apostrophe, utilisée pour délimiter une chaîne de caractères.
Le caractère-espace n'a aucune signification sauf dans les chaînes de caractères.
4.4.2 Limites
Aucune.
4.4.3 Syntaxe
:I'
:: = - 1.1 + l*l/l,l = l(l)l$lT~;
NOTE - $ est donné comme exemple d'un caractère de monnaie national.

---------------------- Page: 11 ----------------------
IS0 4342-1985 (FI
4.5 Caractères
4.5.1 Sémantique
Un caractère est une lettre, un chiffre ou un caractère spécial ou un autre caractère valable.
4.5.2 Limites
Aucune.
4.5.3 Syntaxe
< caractère > : : = < lettre > 1 < chiffre > 1 < caractère spécial > 1 < autre caractère valable >
NOTE - Les autres caractères valables n’ont aucune signification 8 l’intérieur du langage mais sont néanmoins considérés comme entrées valables.
Ils devraient &re traitables par l’exécution spécifique et être choi-
Ces caractères ne sont pas définis autrement dans la présente Norme internationale.
sis à partir des jeux de caractères définis par I’ISO 646 et I‘ISO 840.
7

---------------------- Page: 12 ----------------------
IS0 4342-1985 (FI
4.6 Symbole pour délimiteur littéral
4.6.1 Sémantique
L‘apostrophe est utilisée au début et a la fin d’une chaîne de caractères littéraux pour indiquer l’étendue du champ de la chaîne de
caractères littéraux.
4.6.2 Exemple
PARTNOI’VALVE HOUSING’
4.6.3 Limites
Aucune.
4.6.4 Syntaxe
: : = ’
a

---------------------- Page: 13 ----------------------
IS0 4342-1985 (FI
4.7 Chaîne de caractères littéraux
4.7.1 Sémantique
Une chaîne de caractères littéraux peut être utilisée dans des instructions pour un texte, ou dans des instructions post-processeur tel-
les que INSERT pour passer une information spéciale au post-processeur à travers la CLDATA. L' ?nsemb8e des caractères autorisés
n'est pas limitéà l'ensemble des lettres, chiffres et caractères spéciaux définis dans la présente Norr le irterriationale. Dans une chaîne
de caractères littéraux, tous les caractères spéciaux sont traités comme des caractères simples sans : ign fication syntaxique.
4.7.2 Exemple
P1 = POINT/O,O,O 'COMPONENT DATUM'
4.7.3 Limites
Aucune.
4.7.4 Syntaxe
k
< chaîne de caractères littéraux > : : = [ < caractère > ]

NOTES
1 La syntaxe de la chaîne de caractères littéraux implique que la chaîne vide est permise.
2 Les caractères espace sont significatifs.
3 Une remarque (commentaire) suivant un simple ou un double caractère monétaire n'est pas nécessairement une chaîne de caractères délimitée.
4 Une chaîne de caractères littéraux non terminée par une apostrophe fermée avant une limite de ligne arbitraire (par exemple la colonne 73 de
l'annexe A), se continue sur la ligne suivante sans nécessité d'un caractère monétaire.
5
Une apostrophe est représentée par deux apostrophes dans une chaîne de caractères délimitée par des apostrophes.
9

---------------------- Page: 14 ----------------------
IS0 4342-1985 (F)
4.8 Nombres non signés
4.8.1 S6mantique
Les nombres ont leur significatiovi habituelle, étant composés de chiffres décimaux et pouvant avoir un point décimal. Si aucun point
décimal n‘est inclus dans le norvbre, il est supposé apparaître après le chiffre le plus à droite.
4.8.2 Exemples
4771 1
58.
3.14
4.8.3 Limites
II n‘y a aucune limite définie au nombre de chiffres d‘un nombre, la limite étant dépendante de la mise en œuvre. Aucune distinction
n’est faite entre les nombres entiers et les nombres réels puisqu‘ils sont utilisés d’une facon interne dans le mode réel. Toutes les fois
qu’une valeur entière est nécessaire (par exemple, dans un indice), la partie fractonnaire de la valeur réelle est tronquée.
La représentation d’un nombre aans un calculateur n’est pas nécessairement exacte. Par conséquent, des approximations sont utili-
sées lorsque cela est nécessaire pour effectuer les opérations exactes. Ces approximations sont dépendantes du calculateur.
4.8.4 Syntaxe
< nombre non signé > : = f [ < chiffre > I [.I 1 f [ < chiffre > I . [ < chiffre > 1
10

---------------------- Page: 15 ----------------------
IS0 4342-1985 (FI
4.9 Mots-clés
4.9.1 Sémantique
Les mots-clés ont un sens précis dans le langage. Ils peuvent être considérés comme des entrées dans une liste de vocabulaire.
L’ensemble des mots-clés n’est pas fixé mais peut être étendu dans les révisions futures de la présente Norme internationale.
Les mots-clés n’ont pas le rôle de délimiteurs, par contraste avec quelques langages de programmation scientifiques par exemple,
puisque deux mots-clés contigus doivent être séparés l’un de l’autre par un caractère spécial.
Les mots-clés sont divises en deux catégories. Les mots-clés majeurs qui definissent le type de l’instruction, et les mots-clés mineurs
qui donnent une information supplémentaire. Les categories peuvent se diviser, chacune en deux sous-catégories : les mots-clés pro-
cesseurs et post-processeurs. Les mots-clés post-processeurs sont énumérés et définis dans I‘ISO 4343. Une liste alphabhtique de
tous les mots-clés est donnée dans l’annexe D.
4.9.2 Exemples
POINT
INTOF
4.9.3 Limites
Les mots-clés se composent uniquement de lettres et en ont au moins deux
4.9.4 Syntaxe
< mot-clé > : : = [ < lettre >I
11

---------------------- Page: 16 ----------------------
IS0 4342-1985 (FI
4.10 Identificateurs simples
4.10.1 Sémantique
Les identificateurs simples n’ont pas de sens inhérent et ils sont uniquement utilisés comme des spécificateurs (voir 8.1.41, des labels
ou des symboles arithmétiques.
4.10.2 Exemples
P2
LI
BOBBY1
4.10.3 Limites
Un identificateur simple ne doit pas être redéfini dans un programme de pièce sauf quand il est utilisé en tant que symbole arithméti-
que. Il est recommandé que les processeurs n’acceptent pas des mots-clés comme identificateurs simples. Un identificateur simple de
plus d’une lettre, à moins d‘être utilisé comme synonyme, devrait contenir un chiffre.
4.10.4 Syntaxe
< identificateur simple > : : = < lettre > [ < lettre > I < chiffre >I
12

---------------------- Page: 17 ----------------------
IS0 4342-1985 (FI
4.11 Identificateurs
4.11.1 Sémantique
Un identificateur est similaire à un identificateur simple niais comporte normalement un indice
4.11.2 Exemples
4.11.3 Limites
Un identificateur ne doit pas être redéfini dans un programme de pièce, sauf quand il est utilisé cornnie un symbole arithmétique.
4.11.4 Syntaxe
1
< identificateur > : : = < identificateur simple > ,, [( < scalaire > 11
13

---------------------- Page: 18 ----------------------
IS0 4342-1985 (FI
4.12 Labels
4.12.1 Sémantique
Un programmeur de pièce peut tttacher un label à une instruction pour l’identifier. Le label peut être utilisé dans une instruction de
transfert conditionnel ou incondstionnel, ou dans une instruction de transfert géométrique.
4.12.2 Exemple
Al) GOTO/Pl
ou alternativement AI : GOTOIP1
où Al est le label.
4.12.3 Limites
Aucune.
4.12.4 Syntaxe
< label > : : = y [ < chiftre > I I < identificateur simple >
4.12.5 Renvoi (voir annexe DI
IF
JUMPTO
TUANT0
14

---------------------- Page: 19 ----------------------
IS0 4342-1985 (F)
4.13 instructions
4.13.1 Sémantique
Une instruction est une instruction complète ou une unité d’information comparable à une phrase dans un langage naturel. Une ins-
truction se compose d‘un seul mot-clé ou d’une séquence, définie de facon syntactique, d‘éléments séparés par des caractères spé-
ciaux, Ces éléments sont des mots-clés, des identificateurs simples, des nombres non-signés et des chaînes de caractères.
II y a plusieurs types d’instructions, groupées pour convenance de description dans les cinq chapitres suivants de la présente Norme
internationale : 5 arithmétique, 6 définition de programme, 7 exécution de programme, 8 définition géométrique et 9 exécution géo-
métrique.
Les instructions peuvent être étiquetées ou non. Où que soit permis un mot-clé dans une instruction, il peut être remplacé par un
synonyme défini préalablement.
OÙ que soit permis un mot-clé ou un identificateur simple à l’intérieur d’une macro-instruction, il peut être remplacé par un nom para-
mètre.
4.13.2 Limites
Aucune.
4.13.3 Syntaxe
< instruction > : : = [ < label > [) 1 :]] < instruction non-étiquetée >
< instruction non-étiquetée > : : = < instruction arithmétique > I
< instruction de programme de commande > 1
< instruction de programme de définition > 1
< instruction de définition géométrique > I
< instruction d’exécution géométrique >
15

---------------------- Page: 20 ----------------------
IS0 4342-1985 (FI
4.14 Emboîtement
4.14.1 Sémantique
N'importe quelle instruction arithmétique non-étiquetée ou instruction de définition géométrique non-étiquetée peut être emboîtée.
L'instruction est écrite entre parenthèses. OÙ qu'apparaisse un identificateur simple, il est possible d'emboîter l'instruction complète
avec l'identificateur simple, qui peut être référencé ultérieurement dans le programme de pièce, ou bien il est possible d'emboîter I'ins-
truction sans identificateur simple et sans caractère égal. Les trois alternatives
a) identificateur simple,
b) instruction emboîtée sans identificateur simple,
instruction emboîtée avec identificateur simple,
c)
sont comprises dans le terme ctspécificateur)). Par exemple, quand une entité du type ((cercle)) est valable, on utilise le terme ctspécifi-
cateur de cercle)).
4.14.2 Exemple
Les instructions
PT4 = POINT/3,6
PT6 = POINT/8,9
L2 = LINEIPT4, PT6
peuvent être écrites comme suit
L2 = LINEI(PT4 = POINT/3,6), (POINT/8,9)
4.14.3 Limites
Aucune.
16

---------------------- Page: 21 ----------------------
IS0 4342-1985 (FI
4.15 Programme de pièce
4.15.1 Sémantique
Un programme de pièce est une séquence d’instructions logiquement complétée et ordonnée; le ré: ultat du traitement d’un pro-
gramme de pièce produit un programme de commande de machine également complet et ordon )é.
Un programme de,pièce se compose d’une instruction d’identification du programme de pièce, d‘une séllue ice d’instructions et d‘une
instruction d’achèvement ;1 un programme de pièce.
4.15.2 Limites
Aucune
4.15.3 Syntaxe
k
< programme de pièce > : : = < instruction d’identification de programme de pièce > ,, I < instruction > I
< instruction de fin de programme de pièce >
17

---------------------- Page: 22 ----------------------
IS0 4342-1985 (FI
5 Instructions arithmétiques
5.1 Commentaires généraux
5.1.1 Sémantique générale
Les caractéristiques arithmétiques du langage permettent une grande variété d’expressions algébriques à évaluer à l’intérieur d’un pro-
gramme de pièce. En général, les Opérateurs utilisés dans l’arithmétique du programme de pièce sont ceux de l‘algèbre convention-
nelle, sauf celui de la multiplicat80n algébrique x qui est remplacé par *.
Dans l’algèbre conventionnelle, une description peut occuper plus d‘une ligne. Puisque cela n’est pas converti sans inconvénient en
entrée d‘un calculateur, ceci n’eit pas permis dans le langage de programme de pièce.
:
Par exemple
1 +2+3
A=
4
permis en algèbre doit être conberti en
A = (1 + 2 + 3)/4
avant d‘être utilisé dans le langage de programme de pièce. Pour la même
...

Questions, Comments and Discussion

Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.