The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Выпуск языка программирования Rust 1.76"
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Подсказка: Второй уровень иерархии тем в форуме реализован через вкладку "Показ ключевых тем".
. "Выпуск языка программирования Rust 1.76" +/
Сообщение от Аноним (-), 12-Фев-24, 06:54 
> ты утверждал что char-у _нужно_ 64 бита,

И продолжаю утверждать, что char'у нужно 64 бита для передачи через регистры. Все распространённые ABI так делают на 64-битных процах.

> а оказывается это просто процессор не имеет подходящих регистров

Ты типа пытаешься аппелировать к тому, что это единственный способ передавать чары через регистры? Не думаю, что даже если это верно, то это что-то меняет, но ситуация ещё интереснее тем, что это неверно. Я предположу, что ты никогда не писал на ассемблере? Там ведь нет никаких проблем упаковать 8 чаров в один регистр для передачи. Или, скажем, четыре чара и один uint32_t. На x86_64 есть частичные регистры al/ah, которые позволяют без использования сдвигов упаковать два чара в один rax. Но это не делается в ABI.

Кроме того, речь не только о регистрах, но и о стеке, где char использует 32 бита.

Ответить | Правка | Наверх | Cообщить модератору

Оглавление
Выпуск языка программирования Rust 1.76, opennews, 08-Фев-24, 23:16  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру