Можно ли сказать, что ширина типа данных int зависит от ширины данных ALU? Например, правильно ли сказать, что 32-разрядный процессор будет иметь тип данных int как 32-битный? Аналогично для 16 бит и 8 бит (обратите внимание, что C гарантирует, что размер int не менее greater than 16 bit).Ширина типа данных int на машине
0
A
ответ
4
1
Возможно, вам придется обратиться к документации вашего компилятора относительно определения размера примитивного типа, поскольку детали примитивных типов и встроенных операторов, такие как sizeof
, будут специфичны для компилятора. В конце концов, вероятно, он будет напрямую связан с деталями аппаратного обеспечения, но я считаю, что C находится на более высоком уровне абстракции, чем о себе с деталями ALU.
Многие процессоры не имеют отдельных ALU в течение некоторого времени, поэтому вы не можете использовать это как ссылку. Вместо этого было бы лучше использовать внутреннюю ширину шины данных процессора. –
проверьте ссылку: http://stackoverflow.com/questions/2331751/does-the-size-of-an-int-depend-on-the-compiler-and-or-processor – Vijay
вот еще один, почти дубликат : http://stackoverflow.com/questions/9689049/what-decides-the-sizeof-an-integer –