• Procedura este un subalgoritm scris în limba de programare ce poale fi
apelată din mai multe puncte ale unui program. Fiecare procedura are un nume, de exemplu, readln, writeln, CitireDate, A15 ş.a.m.d. Limbajul PASCAL, include un set de proceduri predefinite, cunoscute oricărui program: read, readln, write, writeln, get, put, new, ect. În completare, programatorul poate defini proceduri proprii. • Instrucţiunea apel de procedură lansează în execuţie procedura cu numele specificat. Sintaxa instrucţiunii date este: • Apel procedură> ::= <Nume procedură> [ <Listă parametri actuali] • < Nume procedură> ::= <Identificator> • <Listă parametri actuali>::=(<Parametru actual> {, <Parametru actual>}) • Procedurile sunt de doua tipuri: FAR si NEAR. O procedura FAR poate fi apelata si din alte segmente de cod decat cel in care este definita, pe cand o procedura NEAR poate fi apelata numai din segmentul de cod in care este definita. • Daca se omit parametrii FAR sau NEAR, tipul procedurii este dedus din directivele simplificate de definire a segmentelor (modelul de memorie folosit). De exemplu, modelul LARGE presupune ca toate procedurile sunt implicit de tip FAR. • In mod corespunzator, exista apeluri de tip FAR, respectiv NEAR, precum si instructiuni de revenire de tip FAR, respectiv NEAR.