Главным преимуществом 64-битного ЦП является возможность иметь 64-битные типы указателей, которые позволяют использовать диапазоны виртуальных адресов размером более 4 ГБ. На 32-битном процессоре размер указателя (обычно) составляет 32 бита в ширину, позволяя указателю ссылаться на один из 2^32 (4 299 967 296) дискретных адресов. Это позволяет программе создавать структуру данных в памяти размером до 4 ГБ и разрешать любой элемент данных в ней путем простого удаления указателя. Реальность несколько сложнее, чем это, но для целей этого обсуждения это достаточно хороший взгляд.
64-разрядный процессор имеет 64-разрядные типы указателей, которые могут ссылаться на любой адрес с пространством с дискретными адресами 2^64 (18,446,744,073,709,551,616) или 16 Exabytes. Процесс на процессоре, подобный этому, может (теоретически) конструировать и логически адресовать любую часть структуры данных объемом до 16 экзабайт, просто удалив ссылку на указатель (поиск данных по адресу, содержащемуся в указателе).
Это позволяет процессу на 64-разрядном ЦП работать с большим набором данных (ограниченным физической памятью), чем процесс на 32-битном ЦП. С точки зрения большинства пользователей 64-разрядных систем основным преимуществом является способность приложений работать с большими наборами данных в памяти.
Помимо этого вы можете получить собственный 64-разрядный целочисленный тип. 64-битное целое число выполняет арифметические или логические операции, используя 64-битные типы, такие как C long long
быстрее, чем один, реализованный как две 32-разрядные операции. Арифметика с плавающей точкой вряд ли будет существенно затронута, так как FPU на большинстве современных 32-битных процессоров поддерживает 64-разрядные типы с плавающей запятой double
.
Любые другие преимущества производительности или расширенные наборы функций являются функцией конкретных реализаций чипов, а не чем-то, что присуще системе, имеющей 64-битный ALU.
Бит исполнения не существует на 32-разрядных архитектурах. – flodin
Да, но он работает только на уровне сегмента. Большинство ОС используют плоскую модель, поэтому они не могут включить ее или не будут выполнять все адресное пространство! 64-разрядные чипы позволяют устанавливать его на уровне страницы. Взгляните на http://en.wikipedia.org/wiki/NX_bit для получения дополнительной информации. – Sean
Sweet - я никогда не знал, что до –