to Dart Bobr
Не хочу засорять интересное обсуждение и поэтому вынес это в отдельный топик. Green совершенно прав. Поменьше эмоций. Аргументы на уровне гениталий и физиологии заставляют действительно усомниться в Вашем профессионализме. Вас ни кто не хочет оскорбить или обидеть, но мой Вам совет: уделяйте больше внимания формулировкам. Делайте их более четкими и продуманными.
Отрицать наличие циклов в языке assemblera по меньшей мере глупо. Так же как и спорить какой язык лучше. Существует не писаное правило, я бы даже сказал закон профессионального программиста: Для реализации проекта выбирается тот язык программирования, который позволяет реализовать проект максимально точно, с минимальными затратами.
Так что будьте профессионалом.
ЗЫ: И научитесь признавать правильность чужого мнения.:angel:
Спасибо за совет! Попытаюсь следовать ему.
ЗЫ. Кстати я получил сообщение похожего содержания от pacific_7. Ему тоже спасибо.
Аргументы на уровне гениталий? Не, это были не аргументы, а наверное мое действительно хамское поведение! Всех кого обидел, извините, пожалуйста!
Про языки програмирования, наверное, не стоило спорить, потому-что каждый пишет на чем может и на чем ему интересно писать! Переубеждать кого-нить это бесполезная работа. Все равно я убежден, что я не переубедил никого пользоваться побольше ассемблером, и никто не переубедил меня в обратном.
А про циклы в языке ассемблера, то я имел ввиду, что в нем они реализовуются при помощи условных или безусловных переходов, в отличие от языков высокого уровня, в которых для этого присутствуют специальные операторы.
А про циклы в языке ассемблера, то я имел ввиду, что в нем они реализовуются при помощи условных или безусловных переходов, в отличие от языков высокого уровня, в которых для этого присутствуют специальные операторы.
Не знаю, насколько мой ответ здесь будет уместен...
Твои рассуждения в корне неверны. В языке ассемблера ничего не реализуется, все реализуется процессором либо другим исполняющим устройством. Если процессор аппаратно (или микропрограммно) реализует циклы, для которых есть отдельная от переходов машинная команда, язык ассемблера обязательно должен иметь мнемонику данной команды, иначе полноценным считаться не может.
Я ассемблер x86 и архитектуру изучал достаточно давно, поэтому могу и напутать. В x86 есть два оператора цикла - loop и rep. Второй является неявным циклом, но тем не менее, это цикл. Главное отличие данных операторов от простых операторов перехода - изменение регистра CX. Впрочем, ты и сам знаешь.
Насколько я помню, именно наличие/отсутствие команд вроде stosb/lodsb и прочих подобных, отличает CISC- и RISC-процессоры.
Не знаю, насколько мой ответ здесь будет уместен...
Твои рассуждения в корне неверны. В языке ассемблера ничего не реализуется, все реализуется процессором либо другим исполняющим устройством. Если процессор аппаратно (или микропрограммно) реализует циклы, для которых есть отдельная от переходов машинная команда, язык ассемблера обязательно должен иметь мнемонику данной команды, иначе полноценным считаться не может.
Я ассемблер x86 и архитектуру изучал достаточно давно, поэтому могу и напутать. В x86 есть два оператора цикла - loop и rep. Второй является неявным циклом, но тем не менее, это цикл. Главное отличие данных операторов от простых операторов перехода - изменение регистра CX. Впрочем, ты и сам знаешь.
Насколько я помню, именно наличие/отсутствие команд вроде stosb/lodsb и прочих подобных, отличает CISC- и RISC-процессоры.
Хм... Имею ввиду то, что в классическом асме нигде не увидишь чего-то наподобие:
for Count := 1 To N Do...
rep, по-моему, считать полноценным опратором(а точнее инструкцией) цикла вообще нельзя. Поскольку это префикс повторения команды, то-есть, грубо говоря, цикл из одной команды. loop считать полноценным оператором(инструкцией) цикла тоже нельзя, ведь нигде в асме мы не увидим чего-то вроде:
for (;Flag!=False &&Count== 5; Count++)...
Просто в асме это все намного примитивнее чем в сях, что полноценными циклами назвать это язык не поворачивается. Просто префиксы, инструкции сравнения и условных/безусловных переходов.
Всех кого обидел, извините, пожалуйста!
Браво!
И ребята, не начинайте по новой старую тему.
for (;Flag!=False &&Count== 5; Count++)...
Просто в асме это все намного примитивнее чем в сях, что полноценными циклами назвать это язык не поворачивается.
Для подтверждения предположения надо привести цитаты именитых авторов. По асму - из теории CISC- и RISC-процессоров, по языкам программирования - Кернигана и Ричи, Вирта, и т. п.
Для подтверждения предположения надо привести цитаты именитых авторов. По асму - из теории CISC- и RISC-процессоров, по языкам программирования - Кернигана и Ричи, Вирта, и т. п.
ОК! Учту в дальнейшем.