Другие языки программирования и технологии

Как компьютер отличает числа?

Такой вот глупый вопрос.
Когда требуется проверка, допустим, х > 10, как компьютер понимает, что 9 меньше, а 11 больше?
Если я скажу, что есть разные варианты, и одним из них является проверка флагов, формируемых в результате вычитания одного числа из другого при помощи двоичного дополнительного кода, то Вы все равно ничего не поймете.

Вам надо начать читать литературу, в которой объясняются арифметические и логические основы вычислительной техники, а также ее архитектура..
Андрей Романов
Андрей Романов
41 118
Лучший ответ
Умные люди придумали как всё это растолковать процессору в машинном коде
Юра Пашкевич
Юра Пашкевич
76 024
Этим занимается электротехника. Ты можешь построить такую логическую электрическую цепь, которая выполняет некую логическую функцию. Происходит это благодаря нахождению изоморфизма между законами логики и законами физики. Грубо говоря, ты можешь создать лабиринт, в который будешь закидывать камушки, обозначающие два числа (в двоичном коде). Выход у тебя один, откуда может выпасть камень, если первое число больше. Таким образом у тебя есть лабиринт, который хитрым образом сконструирован так, чтобы решать эту логическую функцию. В электротехнике всё точно так же, только вместо лабиринта и камней - электрическая цепь и ток.
Плохо различает, но в соответствии с алгоритмами, которые в него заложили. С числами всё просто: алгоритм "выкован" в железе. А с другими объектами сложнее: программисту надо внятно объяснить, как их сравнивать и какой смысл вкладывается в "болше-меньше". Приходится создавать специальную конструкцию, наделять объекты свойством сравнимости. (Например: comparable в java)
Yerzhan Tolebayev
Yerzhan Tolebayev
64 653
тригеры
Сергей Снычев
Сергей Снычев
53 360
в процессоре есть арифметический сопроцессор для выполнения арифметических операций. по определенному алгоритму он выполняет сравнение чисел
Сакен Шеген
Сакен Шеген
4 056
Роман Туманов арифметический сопроцессор используется только для чисел с плавающей точкой. В примере из вопроса тип данных непонятен. Числа выглядят как целые.
Владислав Владимиров +1. Более того раньше мат. сопроцессор не являлся частью процессора и мог быть установлен отдельно. А мог быть вообще не установлен. Н-р 386SX не имела встроенного сопроцессора
Владислав Владимиров Справа под памятью "сокет" для сопроцессора.
Ха, комп это делает каждую миллисекунду и не только с числами, но вообще во всём. Для него хоть число хоть буква нет никакой разницы. Есть набор И ИЛИ НЕТ, и постоянно сверяет что больше что нет, что раньше, а что потом, так вот.
Вообще я таджик из стройки и думаю что так или не.
Bakyt Askarov
Bakyt Askarov
2 472
Иванюк Сергей Кстати, умно делать проверку через И