-
- Вне категорий, совет. Чтобы продвигаться в определениях и методах решения актуальных задач современности требуются не квантованные "меры гирек" - битов и байтов бинарности надёжности сволочизьма состояний Да-НЕТ, а гораздо более гибкие в природных достижениях - ассоциативная, спрайтовая "память отпечатков". И тому подобное, где со временем бинарность вытеснится новыми состояниями пока еще квантованного описания... и.т. ппятниц. :) - bnb62(15.09.2023 16:51)
- Таблица byte и char по машинам. Там же советую потом в поиск (по
тексту страницы) набрать PDP-10 и почитать что пишут рядом. RxTx(1 знак., 15.09.2023 15:27 - 16:00, ссылка)
- Интересно. Можно сказать, что после 1970 года char стал 8-битным... 74ALS(2554 знак., 15.09.2023 16:32)
- Можно ссылку на первоисточник? Ибо бит, байт - это объём памяти.
Байт - 8 бит. К типу, например, char слово "байт" не относится. - POV(15.09.2023 10:01)
- В стандарте С90 в третьей главе вводятся некоторые определения
используемые в дальнейшем. 74ALS(2093 знак., 15.09.2023 12:16)
- Стандартизаторы там самое главное постеснялись написать, что это не описание того каким язык должен быть, а попытка описать тот зоопарк языков "С" который уже существовал. К 89 году успели наплодить десятки несовместимых реализаций на разных машинах. Общие места худо-бедно описали, а остальное объявили implementation-defined. Но главное - задали направление развития для этих реализаций. Ко времени появления С99 ситуация с переносимостью была уже гораздо лучше. - ЫЫyкпy(15.09.2023 19:48)
- Странные формулировки. Марсиане писали. - POV(15.09.2023 12:32)
- Когда это писали, ещё работали ЭВМ, размер байта в которых можно было поменять перепаяв перемычки. - =AlexD=(15.09.2023 14:34)
- В стандарте С90 в третьей главе вводятся некоторые определения
используемые в дальнейшем. 74ALS(2093 знак., 15.09.2023 12:16)
- Всё верно. Любой встроенный тип данных можно эмулировать на целевой
платформе. К примеру, если на целевой платформе память
сегментирована, то можно сделать указатель в виде структуры данных,
поведение которого описывается специальными функциями, а не одной
ассемблерной командой. Разумеет такого никто не любит, и
предпочитают разные костыли в виде дополнительных квалификаторов
типа, т.к. женерик реализация будет непозволительно тормознутой. - =AlexD=(15.09.2023 09:54)
- Можно сегментированность памяти описать прагмами или как-то ещо и работать конкретно в каждом сегменте. Или речь не об то? - mse homjak(15.09.2023 12:15)
- Вот, именно так я это и представлял. Спасибо. - 74ALS(15.09.2023 11:42)
- Если бы реализация была "непозволительно" тормознутой, её бы не было. А раз она есть и даже используется, она "позволительно" тормознутая просто по определению. - SciFi(15.09.2023 09:57)
- ну как бы ответы скорее верные, потому как мы на x86 компилируем для всяких других девайсов, где могут быть совершенно разные реализации... пример я уже как-то приводил одной системы bool = char = int = long = float = 32 бита... - sav6622(15.09.2023 09:47)
- Не нужно так интерпретировать эти штуки. Язык Си задумывался как
высокоуровневый ассемблер, он должен ложиться на железо максимально
точно. Если какой-то чудак нарушит это правило, его закидают
тухлыми яйцами. Все эти оговорки сделаны для экзотических
архитектур, чтобы было формальное разрешение натянуть на них Си,
хоть временами это и выглядит сомнительным начинанием. Вроде бы
есть какой-то DSP (от техасских инструментов?), для которого
сделали Си с 16-разрядным char. - SciFi(15.09.2023 09:46)
- tms320f2812 - Alex68(15.09.2023 15:12)
- Да я это понимаю, но вопрос задавал специально в контексте "высокоуровневости" языка C. Я умозрительно сформировал у себя представление такой машины, просто хотел убедиться, что понимаю ее правильно. Так то да, в идеале - необходимо оптимально отобразить работу абстрактной машины языка С на конкретную программно-аппаратную платформу (execution environment) с наименьшим семантическим гэпом. - 74ALS(15.09.2023 12:09)
- дак вроде он и так ложиться максимально точно... просто в наших мозгах прибито, что char = 8 бит, хотя это просто у большинства так...так же как и что sizeof() даёт размер в БАЙТАХ =)) а это совсем не так... он просто для большинства платформ будет давать в байтах =)) - sav6622(15.09.2023 09:53)
- =))) бывает и 32 разрядный char =)) - sav6622(15.09.2023 09:47)
- Может, я именно на это и ссылаюсь, запамятовал уже. Не практиковал DSP. - SciFi(15.09.2023 09:49)