Скалярные процессоры — это класс компьютерных процессоров , которые обрабатывают только один элемент данных за раз. Типичные элементы данных включают целые числа и числа с плавающей точкой . [1]
Скалярный процессор классифицируется как процессор с одной инструкцией и одними данными ( SISD ) в таксономии Флинна . Intel 486 является примером скалярного процессора. Его следует противопоставлять векторному процессору , в котором одна инструкция одновременно работает с несколькими элементами данных (и поэтому его называют процессором с одной инструкцией и несколькими данными ( SIMD )). [2] Разница аналогична разнице между скалярной и векторной арифметикой.
Термин «скалярный» в вычислительной технике появился в 1970–1980-х годах, когда впервые появились векторные процессоры. Первоначально он использовался для различения старых конструкций от новых векторных процессоров.
Суперскалярный процессор (такой как Intel P5 ) может выполнять более одной инструкции в течение тактового цикла, одновременно отправляя несколько инструкций избыточным функциональным блокам процессора. Каждый функциональный блок не является отдельным ядром ЦП, а ресурсом выполнения в пределах одного ЦП, таким как арифметико-логический блок, битовый сдвигатель или умножитель. [1] Cortex -M7 , как и многие потребительские ЦП сегодня, является суперскалярным процессором. [3]
Скалярный тип данных, или просто скаляр , — это любое несоставное значение .
Как правило, все основные примитивные типы данных считаются скалярными:
bool
)int
, типы с плавающей точкойfloat
и double
)char
)Некоторые языки программирования также рассматривают строки как скалярные типы, в то время как другие языки рассматривают строки как массивы или объекты .