PHP

Есть у кого исходный код функции "+" ? Вот если бы небыло + как создать свою функцию сложения чисел?

Объясните пожалуйста, как работает функция сложения? Если знака "+" не существует. Как написать функцию которая будет понимать что + это значит нужно одно сложить с другим? Как оно понимает слово "Сложить вместе"? Есть у кого исходники функции +?
Во-первых, знак + существует. Во-вторых, операция сложения реализуется в процессоре электронной схемой. Хотя ее можно выразить и через логические операции И и НЕ над отдельными битами, чем, собственно, и занимается эта электронная схема. Попросту эти операции электроникой реализуются так: на входе транзистора есть напряжение - на выходе нет. Это операция НЕ. На входах двух последовательно соединенных транзисторов есть напряжения - на выходе нет. Это схема И-НЕ. Включив после нее схему НЕ, получим схему И. Хотя есть и другие варианты схем.
А компилятор, грубо говоря, код знака плюс переводит в код включения схемы процессора, складывающей значения из двух ячеек памяти.
Антон **
Антон **
84 412
Лучший ответ
Иван Киценко спасибо!) Понял
Уточню ответ Краба: для некоторых типов данных - да, эта операция реализуется процессором; для остальных пишутся программы. Можешь сам попробовать написать программу, складывающие две строки, содержащие числа, в столбик, без операции "+, только с увеличением (уменьшением) на 1 (inc/dec в паскале, ++/-- в C-подобных).
Франц Масло
Франц Масло
66 454
Поскольку операция сложения имеется в ассемблере, то есть на уровне процессора, то она не может быть не реализована. Точнее, может такое случиться, но с помощью вставки на ассемблере она добавляется куда надо.
Смотря что складываете. Есть книга Уоррена, Алгоритмические трюки для программистов, ориентировано на разработчиков компиляторов и программистов, заинтересованных в низко-уровневых оптимизациях. Там есть алгоритмы, интересующие вас (с контролем переполнения и т. п.). На английском выходила под названием Hacker's Delight
Вот и функция сложения
function calc($p1, $p2){
$res = $p1 + $p2;
return $res;
}
выводить так
echo calc(65,35);
выведет: 100
Иван Киценко Прям кэп)) Ты сложи 2 числа без знака +