This articleneeds additional citations forverification. Please helpimprove this article byadding citations to reliable sources. Unsourced material may be challenged and removed. Find sources: "Scalar processor" – news ·newspapers ·books ·scholar ·JSTOR(August 2012) (Learn how and when to remove this message) |
Scalar processors are a class ofcomputer processors that process only one data item at a time. Typical data items includeintegers andfloating point numbers.[1]
A scalar processor is classified as a single instruction, single data (SISD) processor inFlynn's taxonomy. TheIntel 486 is an example of a scalar processor. It is to be contrasted with avector processor where a single instruction operates simultaneously on multiple data items (and thus is referred to as a single instruction, multiple data (SIMD) processor).[2] The difference is analogous to the difference betweenscalar andvector arithmetic.
The termscalar in computing dates to the 1970 and 1980s when vector processors were first introduced. It was originally used to distinguish the older designs from the new vector processors.
Asuperscalar processor (such as theIntel P5) may execute more than one instruction during a clock cycle by simultaneously dispatching multiple instructions to redundant functional units on the processor. Each functional unit is not a separate CPU core but an execution resource within a single CPU such as an arithmetic logic unit, a bit shifter, or a multiplier.[1] TheCortex-M7, like many consumerCPUs today, is a superscalar processor.[3]
A scalar data type, or justscalar, is any non-compositevalue.
Generally, all basicprimitive data types are considered scalar:
bool)int, thefloating point typesfloat anddouble)char)Some programming languages also treatstrings as scalar types, while other languages treat strings asarrays orobjects.