Scalar processors represent the simplest class of computer processors. A scalar processor processes one datum at a time (typical data items being integers or floating point numbers).[1] , a scalar processor is classified as a SISD processor (Single Instructions, Single Data).
In a vector processor, by contrast, a single instruction operates simultaneously on multiple data items. The difference is analogous to the difference between scalar and vector arithmetic.
A superscalar processor, on the other hand, executes 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]