Влияет ли на работу программ то, как отрицательные числа представлены внутри?

Я не говорю конкретно о каком-либо алгоритме или программе. Но, учитывая программы манипулирования битами и другие задачи, включающие дополнение до 2 или дополнение до 1 и т. д., что, если отрицательные числа представлены (в памяти или где-либо еще) способом, противоположным предположениям программиста. Этот сценарий вообще происходит? Если да, то как с этим можно справиться.

Очень часто что-то работает на платформе иначе (ваше «и т. д.»), чем предполагал программист. Дефектное программное обеспечение откажется компилировать или не пройдёт тесты. Дефекты обрабатываются путем программирования бездефектного кода.

Öö Tiib 20.02.2023 09:15

Почему именно отрицательные числа? Положительные моменты тоже можно хранить по-разному

463035818_is_not_a_number 20.02.2023 09:22

Несколько связано stackoverflow.com/questions/70801443/…

463035818_is_not_a_number 20.02.2023 09:35
Конечные и Readonly классы в PHP
Конечные и Readonly классы в PHP
В прошлом, когда вы не хотели, чтобы другие классы расширяли определенный класс, вы могли пометить его как final.
От React к React Native: Руководство для начинающих по разработке мобильных приложений с использованием React
От React к React Native: Руководство для начинающих по разработке мобильных приложений с использованием React
Если вы уже умеете работать с React, создание мобильных приложений для iOS и Android - это новое приключение, в котором вы сможете применить свои...
БЭМ: Конвенция об именовании CSS
БЭМ: Конвенция об именовании CSS
Я часто вижу беспорядочный код CSS, особенно если проект большой. Кроме того, я совершал эту ошибку в профессиональных или личных проектах и...
Революционная веб-разработка ServiceNow
Революционная веб-разработка ServiceNow
В быстро развивающемся мире веб-разработки ServiceNow для достижения успеха крайне важно оставаться на вершине последних тенденций и технологий. По...
Как добавить SEO(Search Engine Optimization) в наше веб-приложение и как это работает?
Как добавить SEO(Search Engine Optimization) в наше веб-приложение и как это работает?
Заголовок веб-страницы играет наиболее важную роль в SEO, он помогает поисковой системе понять, о чем ваш сайт.
Конфигурация Jest в angular
Конфигурация Jest в angular
В этой статье я рассказываю обо всех необходимых шагах, которые нужно выполнить при настройке jest в angular.
0
3
54
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий
Этот сценарий вообще происходит?

Да, до C++20 это разрешено, и в прошлом были архитектуры, которые не использовали дополнение до двух. Однако, начиная с С++ 20, представление двух дополнений является обязательным.

Если да, то как с этим можно справиться.

Не полагаясь на операции с поведением, определяемым реализацией, или утверждая, что ваш код может использоваться только в двух дополнительных архитектурах.

Это изменение приветствуется, но ИМХО лет на 30 слишком поздно.

john 20.02.2023 10:34

Другие вопросы по теме