Final Vocab Flashcards
(226 cards)
absolute code
computer program code that is executable without
further processing: all addresses in the code are absolute.
cf. relocatable code.
abstract syntax tree (AST)
a tree representation of a program
that is abstracted from the details of a particular programming
language and its surface syntax.
accepting state
a state of a finite automaton in which the input string is accepted
as being a member of the language recognized by the automaton.
actual parameter
a parameter used in a call to a subprogram. cf. formal parameter.
address alignment
see storage alignment.
adjacency matrix
a method of representing a graph by a Boolean
matrix M , where M_{ij = 1 iff there is an arc from node i
to node j in the graph.
aliasing
the creation of an alternate name for data, either in the definition of
a program or during its operation.
alphabet
a set of symbols used in the definition of a language.
ambiguity
a case where more than one interpretation is possible.
ambiguous grammar
a grammar that allows some sentence or string to be generated
or parsed in more than one way (i.e., with distinct parse trees).
antisymmetric
a relation * is antisymmetric iff
forall a, b . a b and b a –> a = b .
Example <=
arity
the number of arguments of a function.
associativity
a specification of the order in which operations should be performed
when two operators of the same precedence are adjacent. Most operators
are left-associative, e.g. the expression A - B - C
should be interpreted as ((A - B) - C).
augmented transition network (ATN)
a formalism for describing parsers, especially for natural language.
Similar to a finite automaton, but augmented in that arbitrary tests may be
attached to transition arcs, subgrammars may be called recursively, and
structure-building actions may be executed as an arc is traversed.
automatic programming
synthesis of a program that satisfies a
specification, where the specification is higher-level than ordinary
programming languages.
available
an expression is available if it has been computed previously in the
computation path preceding the current location and has not been killed.
AVL tree
self-balancing binary search tree
backpatching
filling in the address of a label, which has just become defined, in preceding parts of the program that made forward references to it.
backward referencing
a reference to an earlier statement in the program
base address
the address of the beginning of a data area. This address is added to a relative address or offset to compute an absolute address.
basic block
a sequence of program statements such that if any of them is executed, all
of them are; a sequence of statements that has a label (if any) only at the
beginning and a branch (if any) only at the end.
basic type
a data type that is implemented in computer hardware
instructions, such as integer or real.
bit vector
a sequence of Boolean values (0 or 1) represented as the
bits of one or more computer words. It is an efficient representation
for sets that are subsets of a fairly small finite set of possible elements.
BNF
Backus-Naur Form, a syntax for writing context-free grammars
that describe computer languages.