Data type

In computer science, a data type is the combination of a value range with permissible operations.
Datatype is frequently shortened to type.

 Programming 
Data types in programming allow the programmer to perform operations on a datum.
Every datum has an associated data type.

In the Pascal programming language, the data 42 has the data type integer.
 The data type integer has a certain range of allowed values. For example, on an 8-bit computer, this range includes all whole numbers between -127 and 127. The value 1337, however, is not an allowed integer value.
 Furthermore, the data type integer allows certain operations: The operation + can take two integer dates and calculates their combined sum. There are many more operations. All those operations characterize the data type integer.
A data type forms a unit:
Together, the specific permissible range and legal operations are referred to as a “concrete data type.”
When a programmer or the compiler reads the word integer in the source code, they automatically understand which values and operations are allowed.

 Availability 
 High-level 
Data types are an abstract concept.
This concept primarily appears in high-level programming languages.
Virtually all high-level programming language explicitly include the notion of data type.
Common basic data types may include:
 integers
 Boolean values
 characters (individual letters) and strings
 a subset of real numbers

Usually, these and other basic data types can be combined to custom data types using structure concepts like:
 arrays
 sets
 records

 Low-level 
The notion of data types as presented above is unknown in assembly language, a low-level programming language.
All computers know integer number values.
Modern computers also know real numbers in binary.
But there is no rigid enforcement of proper “data type” use.
Assembly language does not prevent using an integer as if it were a real number.
This is intentional, because assembly language is the basis of all (high-level) programming languages.

Yet, the processor’s machine code sets the limits.
Usually, the only “data types” are:
 register names
 memory addresses
 immediate values
All of which may be further differentiated by their size, how many Bytes each of those occupies, or—in the case of memory address—how many Bytes the referenced object occupies.

 Related pages 
 File format: describes how to read or write a computer file (legal operations) and what this file may contain (permissible value range)
 variable: variables in computer programming frequently require a data type

 Sources 

Category:Computer science
Category:Computer terminology