C++ или Assembler

C++
6
Нейтральная
сторона
1
Assembler
9
and or if else xor
Прежде чем писать комментарии или выбрать сторону вы должны авторизироваться!
1011001001

13-01-2011 20:24 0

может я тупой, но в C++ нет and и or, там && и ||

15 комментариев
inrain 13-01-2011 20:25 0

Tro, Не может, ты тупой!

Jotun 13-01-2011 20:26 0

Tro, Там есть.

Tro 13-01-2011 20:27 0

inrain, я тупой( но && и || есть

Razor 13-01-2011 20:30 0

Tro, Ну, и Ассемблер - это не такой уж бинарный код)

opera.rulez 13-01-2011 20:31 0

inrain, Тупой автор вара. Сам хоть понял, что написал в заголовках?

inrain 13-01-2011 20:39 0

opera.rulez, Да, в заголовках C++ против Assembler (это два языка программирования).

inrain 13-01-2011 20:40 0

Razor, Да это не бинарный код но ближе всего к нему

opera.rulez 13-01-2011 20:49 0

inrain, В современных ассемблерах есть макросы, можно пользоваться любой системой счисления. Нули и единицы — это не к ассемблеру, а к тем, кто набирает двоичные файлы в HEX-редакторах.

opera.rulez 13-01-2011 20:51 0

inrain, Был вар Ассемблер против языков высокого уровня: holywars.ru/comments/101

Вы настаиваете, что на левой стороне только C++?

inrain 13-01-2011 20:55 0

opera.rulez, Ассемблер это язык мета-команд который переделывается компилятором в 10011010111101110001, на нём ближе всего работа с процессором (контроллером)

Razor 13-01-2011 20:57 +1

inrain, Ну, Си в конечном итоге все равно переделывается в него же) Имеется в виду, что можно было,например, mov какой-нибудь написать, или еще че)

opera.rulez 13-01-2011 20:58 0

inrain, А C++ по-Вашему во что компилируется? OBJ-файл — это те же 10011010111101110001, которые исполняются процессором непосредственно. Другое дело Ява, C#, Вижуал Бейсик, Перл, Питон, которые компилируются не в коды процессора, а в псевдокод.

Разница в том, что Ассемблер предоставляет программисту больший контроль над ситуацией. В Ассемблере легче угадать, какие машинные коды будут на выходе, чем в C++.

opera.rulez 13-01-2011 21:04 +1

Razor, Я, например, знаю, что if скомпилируется в цепочку команд CMP/TEST и JZ/JA/JB/JG/JL. Много раз безошибочно угадывал, во что скомпилируется моя программа на Турбо-Паскале.

Linux 13-01-2011 23:22 0

inrain, Неа.

opera.rulez 14-01-2011 00:28 0

inrain, Некоторые компиляторы C++ умеют генерировать объектный файл напрямую, а некоторые (gcc) сначала генерируют ассемблерный файл, который компилируется Ассмеблером. Даже у непосредственных компиляторов C++ есть режим «compile via assembler». Что скажете на это?

13-01-2011 20:31 0

Ассемблер - это уже напильник. Впрочем, если кто-то из синих хочет свають на нем какой-нибудь крупный программный проект - флаг им в жопу руки)

3 комментария
opera.rulez 13-01-2011 20:48 +1

Razor, Как нейтрал скажу так.

Крупный проект на чистом ассемблере — геморрой, на языках высокого уровня будет легче.

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

Razor 13-01-2011 20:53 +1

opera.rulez, Ну, это я имел в виду под напильником)

opera.rulez 13-01-2011 20:55 +1

Razor, Кстати, хорошее сравнение. Без напильника никуда для окончательной шлифовки, но с нуля вытачивать им изделие утомительно.

Но чудо-мастера бывают. Пример: MenuetOS. Графическую операционку написали на голом ассемблере!

14-01-2011 00:32 0

Он проще, а цена потери времени не велика.

0 комментариев
13-01-2011 23:54 +1

Универсален же.

0 комментариев
14-01-2011 00:02 +2

Это ж самое нутро!

0 комментариев
14-01-2011 10:43 +1

От одного вида текста программы на нем разрывает анус, охуенно.

1 комментарий
opera.rulez 14-01-2011 19:36 0

Gopnik,

.model tiny

.code

org 100h

start:

mov ah, 9

mov dx, Message

int 21h

int 20h

Message db "ПРЕВЕД, ГОПНЕГ!$"

end start