Разница в языках ASM и C#

Тема в разделе "WASM.HEAP", создана пользователем D3s, 13 сен 2008.

  1. D3s

    D3s New Member

    Публикаций:
    0
    Регистрация:
    13 сен 2008
    Сообщения:
    20
    Жестко xD
    А если бы предложить им писать на дельфях то исход был бы тот же ))))
     
  2. D3s

    D3s New Member

    Публикаций:
    0
    Регистрация:
    13 сен 2008
    Сообщения:
    20
    И все таки я считаю ты не программист если не знаеш асма. асм сам по себе может и не реализует 1С бухгалтерию, винапм, 3Д Макс, но вот эллементарно для отладки, для повышения скорости программы, для надежности (хотя суть как это сделать для меня остается тайной) его нужно знать! Да и зная асм, остальные языки будет не проблема выучить.
    Но что остается верх совершенством? асм? асм максимум приблежен как я понял к процессору (0,1) и остальной переферии, или же имеется более высший изврат?
     
  3. D3s

    D3s New Member

    Публикаций:
    0
    Регистрация:
    13 сен 2008
    Сообщения:
    20
    Я далеко от Москвы:dntknw: аж 2500 км (( а чтоб по аськам общатся или чатам этоне по мне
     
  4. _basmp_

    _basmp_ New Member

    Публикаций:
    0
    Регистрация:
    10 июл 2005
    Сообщения:
    2.939
    driver
    ЯВУ не просто улучшают читабельность (тот-же С нечитабельнее паса и оба они нечитабельнее нек более старых ЯВУ), они ограничивают спектр потенциальных возможностей до более-менее автоматически контролируемых размеров (С отличался от Б в основном системой типов. Где щас Б?) и предоставляет средства для автоматического и полуавтоматического контроля и поиска ошибок (а как иначе? крупный проект пишется тучу времени хучей человеков, каждый с непредсказуемыми фантазиями и умолчаниями). Ну и переносимость. Была, остается и будет оставаться актуальной.
    Есть вуз, а есть техникум. В техникуме учат профессии. В вузе учат учиться, думать самостоятельно, отстаивать и реализовывать свою точку зрения в направлении и на примере профессии. Имхо это очень разные вещи.
    А насчет преподов, если это вам важно, докажите им, что они ошибаюся. Заодно и разберетесь как это делается вообще. В жизни оч пригодится.

    D3s
    Код (Text):
    1. #include <stdio.h>
    2.  
    3. int main()
    4. {
    5.     printf("He(a?)llo wor(l?)d!\n");
    6. }
    На Цэ весит немного меньше 300к и тоже компилится даже под линух.

    Atlantic
    один фак, одна кафедра? Большой вуз (разные преподы по ++ и асму)?

    driver
    Умные люди не тревожат разум богатых, занятых, умных, важных итд людей, в особенности женщин, всякими ассемблерами. Вообще, подобных людей не рекомендуется учить чему-то чего они не знают лучше вас. И произносить при них утверждения не привязаные к уважаемому ими авторитету. Самый лучший вариант - спрашивать, просить, консультироваться, не забывая то намекать, то говорить прямо, как много они для вас делают. Даже сейчас вы можете восстановить и упрочить благорасположение признав ошибку с юзабельностью асма при первой встрече с вашей знакомой (не двумя словами. женщины любят длинные и прочувствованые речи) и, обязательно, выделив как она помогла вам, сберегла ваше время, деньги и силы своевременно сделав замечание. Бросив асм вы нашли другой, на удивление замечательный ЯВУ (узнайте перед этим какой она считает достойным) и теперь в меру своих небольших сил его постигаете (боже вас упаси завернуть на этом ЯВУ что-то чего она не поймет с 3-4го захода. особенно поначалу). Главное побольше искренности в широко открытых глазах глядящих то в землю, то ей в лоб (верхнюю часть. каждый миллиметр имеет значение), не забываем рот держать слегка-слегка приоткрытым, а ноги немного косолапо и приглашение в гости восстановится, а может и подработать получится.

    D3s
    Асм, а точнее машкод реализует все. А вот с элементарностью отладки машкода вы, имхо, несколько спешите.
    Зная С или пас остальные ЯВУ несложно будет выучить. Асм надо учить после одного из основных ЯВУ. Если вас конечно заинтересуют такие подробности или не хватит возможностей ЯВУ. Грубо это можно изобразить как математику и введение в вышку (дальше - машкод). Сомневаюсь, что разумно сперва разбирать интегралы, а потом учить таблицу умножения и искать корни полинома второй степени (блин, позабывал терминологию полностью).
     
  5. GoldFinch

    GoldFinch New Member

    Публикаций:
    0
    Регистрация:
    29 мар 2008
    Сообщения:
    1.775
    Ну изучение ЯП можно организовать и подругому.
    Сначала разобраться в работе триггера на транзисторах. Потом - триггер на дискретных логических элементах. Потом сумматоры, счетчики, регистры, ОЗУ. Потом АЛУ+УУ, к этому моменту существование машинного (управляющего) кода будет чем-то само собой разумеющимся. Потом модели памяти, фон Неймановская организация памяти, и прочие моменты современных ПК. Гдето перед АЛУ и УУ можно сделать экскурс в теорию конечных автоматов.
    Параллельно с аппаратными аспектами программирования, можно изучать теорию программирования, представление данных (от чисел до очередей с деревьями), стандартные алгоритмические конструкции (ветвления,циклы,рекурсии).
    Ну а разобравшись с машинным кодом и теорией программирования можно уже написать простенькую программу в debug. Понять что машинный код хорошо, но есть много рутинных операций, и перейти на уровень повыше - асм с макроинструкциями. От макроинструкций перейти на более высокий уровень - операторы, это уже ЯВУ.
    Потом взять дизасм, посмотреть как компилятор ЯВУ за тебя делает всю рутинную работу, и подумать устраивает ли тебя такое качество.
     
  6. W4FhLF

    W4FhLF New Member

    Публикаций:
    0
    Регистрация:
    3 дек 2006
    Сообщения:
    1.050
    driver
    Всё относительно. Вот статистика крупнейшего поисковика работы для языков смежного профиля:

    [​IMG]

    Вот другой популярный индекс: http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html

    Хотя асм они вроде не индексируют, но тем не менее он был бы не в 20 точно.

    По индексу того же крупнейшего поисковика indeed.com доля предложений работы, где встречается требование " x86 assembler" составляет 0.005% и падает:

    [​IMG]

    Причём это учитывая то, что мне не удалось найти вакансию, где ассемблер является основным требованием, лишь дополнительным или желательным.

    А теперь внимание. Статистика по зарплатам, средняя по всему миру(индекс того же indeed.com, $ в год, в скобках разброс):

    Java: 85.000 (53.000 - 106.000)
    C++: 87.000 (76.000 - 89.000)
    Delphi: 77.000 (46.000 - 89.000)
    C#: 85.000 (41.000 - 93.000)
    C developer: 88.000 (unknown)
    Oracle (просто для интереса): 93.000 (73.000 - 143.000)

    По ассемблеру собрать статистику не удалось, т.к. нет чистых вакансий, уже говорил выше.

    В общем если вы гуру связки Java+Oracle за 3-4 года на квартиру в Москве заработаете. :)

    Так вот, driver, не вижу, как и старые пердуны преподы, признаков жизни ассемблера. Можешь мне показать, будет интересно.

    _basmp_
    Окунись в мир Java, C# 3.0, advanced C++, python, erlang... и ты поймёшь как сильно ты заблуждаешься.

    А вообще, как говорят сенсеи, язык -- средство решения задачи. Профессионал всегда выбирает средство, которое лучше всего подходит для решения задачи. Остальное -- подростковое, пройдёт :)
     
  7. GoldFinch

    GoldFinch New Member

    Публикаций:
    0
    Регистрация:
    29 мар 2008
    Сообщения:
    1.775
    Вот и получается, что профессионалы выбирают наиболее подходящие средства из доступных гуаносредств, а свои средства создавать никто не умеет и учиться не хочет.
     
  8. W4FhLF

    W4FhLF New Member

    Публикаций:
    0
    Регистрация:
    3 дек 2006
    Сообщения:
    1.050
    GoldFinch

    Ты удивишься, но весь софт, который ты используешь (приготовься) написан не на АССЕМБЛЕРЕ с использованием гуаносредств! Но это мелочи, ты представляешь, что автор этого сайта и сам сайт написан(готов?) на PHP, даже не на убогом СИ, не то, что богоподобном АССЕМБЛЕРЕ. И я сомневаюсь, что прежде, чем создать этот сайт Аквила написал собственную СУБД, чтобы с чистой совестью использовать MySQL, а иначе как? Ты ведь не достоин пользовать готовое, пока не создашь такое же или лучше :)


    Жить вообще страшно, особенно когда в мире столько крайностей :)
     
  9. driver

    driver New Member

    Публикаций:
    0
    Регистрация:
    18 июн 2008
    Сообщения:
    302
    зарабатывать на хлеб - да, приходится делать то, что от тебя требуют, а не то, что хочется

    Для себя пишу программы на масме ( их немного, но пользуюсь постоянно, их аналоги по каким-то причинам не устраивают)) и НИКТО не сможет убедить меня, что писать их на С или на каком то ещё языке, который создавался кем-то с чуждым мне образом мышления, языком и целями - удобней ....


    не нравится синтаксис ЯВУшных языков, и с этим согласны несколько известных программистов - разобраться, например, в чужом коде С++ намного трудней, чем в масмовском (по этой причине неприятен фасм - мизерный выигрышь в скорости и размерах исполняемого файла, а исходник без комментариев смотрится стрёмно... ничего не понять).


    Появилась идея написать суперассемблер 21 века :
    там будут инструкции типа :

    ebx, var^2.75 ; перменная возводится в степень 2.75, результат в ebx
    3,5*ln5,7843521 ; число умножаем на натуральный логарифм,
    ; результат по умолчанию в eax

    var1/var2 ; результат в eax, переменные могут быть НЕ целыми
    ; и НЕ положительными

    и так далее такого типа

    Может получиться? - поробовать для каждого регистра общего пользования и каждой переменной автоматически создавать "виртуальную" переменную, в которую будет запоминаться положение "точки" и знак.
     
  10. GoldFinch

    GoldFinch New Member

    Публикаций:
    0
    Регистрация:
    29 мар 2008
    Сообщения:
    1.775
    Поэтому каждая новая версия программы или оси жрет все больше ресурсов и предъявляет большие требования к пк. Может когото это и радует.
     
  11. Aspire

    Aspire New Member

    Публикаций:
    0
    Регистрация:
    19 май 2007
    Сообщения:
    1.028
    Очень согласен (© comedy club), что сначала нужно учить ЯВУ, потом асм. У меня вот, сложилось по другому... Пишу на масме, попытался учить Си++, даже чё то написал на нем. Только, когда писал, все равно представлял, что в какой регистр пересылается. Этого не должно быть, это - мешает. Вроде на Си должно быть все красиво и понятно, а у меня получалось то же что и на асме, только на Си... сложно перестроиться.
    Пока, для того, что я пишу, хватает (а, иногда и требует) асма. Когда созрею, перейду на Си++.
     
  12. driver

    driver New Member

    Публикаций:
    0
    Регистрация:
    18 июн 2008
    Сообщения:
    302
    что в С++ уже наладили сборку мусора и устранили утечки памяти?

    Прикольные глюки появляются, когда в готовом проекте нужно что-то изменить, и появляю они неожиданно - уже в процессе эксплуатации...
     
  13. varnie

    varnie New Member

    Публикаций:
    0
    Регистрация:
    2 янв 2005
    Сообщения:
    1.785
    driver
    в С++ не может быть сборки мусора по определению. не было, и не будет. 100%.
    утечки памяти -- на совести программиста.
    прописные истины, однако.

    ps: да будет вам известно -- в той же ява тоже возможны утечки мусора. об этом вам скажет любая хорошая книга по ява.
     
  14. driver

    driver New Member

    Публикаций:
    0
    Регистрация:
    18 июн 2008
    Сообщения:
    302
    какая лажа.. всё это

    однако, в конечном итоге, сам факт распостранения языка говорит о его полезности ...вот только с трудом верится в бесполезность асма - фотошоп написан полностью на ассемблере, да будет вам известно, а если бы даже не на дельфях, а на С++ - это был бы сплошной тормозной глюк рамером в несколько разов больше...так что...
     
  15. _basmp_

    _basmp_ New Member

    Публикаций:
    0
    Регистрация:
    10 июл 2005
    Сообщения:
    2.939
    W4FhLF
    Вроде бы мы с вами уже имели беседу по схожей теме и в схожем тоне. Вам она так понравилась, что вы хотите продолжить ее?

    По посту:
    Даже не смотря на то, что жаба, решетка и плюсы (и перл, и жабаскрипт, и .. >%70 современных яву) не имеют совершенно ничего общего с С и пасом, а ближе к пс и форту, я достаточно обосновано считаю, что человек средних способностей не может разбираться во всех направлениях (? техники, технологии, мысли наконец) одинаково хорошо, даже учитывая вечноменяющуюся коньюнктуру рынка. Если не стараться изучить все возможные попсовые ерланги (поверьте, ерланг далеко не самое лучшее/красивое решение), то стать достаточно грамотным и оплачиваемым специалистом вполне по силам обычному человеку. Тем более, что языков и диалектов с каждым годом все больше, мода на названия меняется быстро, а разобравшись основательно с текуще-модным яву можно обнаружить, что мода на него уже прошла или на одну вакансию по >100 модников.

    PS кстати не понимаю почему вы, плюсовик, так выступаете за решетку или жабу, представляя их каким-то невероятным достижением мысли? Более простой синтаксис нравится? Ну так и на бумажке можно писать что хочешь и как хочешь - будет еще проще, быстрее и удобнее.

    PS2 кстати, фразу 'язык -- средство решения задачи' написали вы. Потом я ее вам процитировал, теперь 'как говорят сэнсеи'. Кого вы сэнсэем обозвали? Себя? Или, боже упаси, меня? Или это изначально рецитата из предполагаемо знаменито-авторитетной книжки? Тогда почему она шла под вашим ником? Рынок требует копирайтов.

    ЗАКЛЮЧЕНИЕ
    В целях непродолжения скучных разговоров с неизлечимо глупым и недостойным сопляком не исходящим паром от слов 'управляемый код' и 'технология от МС' допускается не отвечать на этот постинг. Обязуюсь не развивать тему без вашего в ней активного участия.
     
  16. Aspire

    Aspire New Member

    Публикаций:
    0
    Регистрация:
    19 май 2007
    Сообщения:
    1.028
    Ого!
     
  17. W4FhLF

    W4FhLF New Member

    Публикаций:
    0
    Регистрация:
    3 дек 2006
    Сообщения:
    1.050
    driver
    Ага, пихаешь в ИДУ бинарник. Дизассемблируется? Значит на ассемблере написан :)

    _basmp_

    В твоём посте соотношение конструктива и каких-то обид просто зашкаливает. Относись проще к моим высказываниям. И давай наконец на ты :)

    Если бы я гнался за простотой синтаксиса я бы программировал на ассемблере(правда непонятно на что бы я жил в таком случае:) ), т.к. это самый простой язык. А Java, .NET и Python я представляю себе очень динамично развивающимися платформами и языками, где объединяются/создаются множество идей, подходов и технологий. Не исключаю возможности, что когда-нибудь сменю профиль. А синтаксис это далеко не главное.

    varnie
    Причём С++ настолько гибок, что позволяет создать универсальные средства, которые в большинстве случаев позволяют забыть о ручном управлении памятью.
     
  18. Ursus

    Ursus Member

    Публикаций:
    0
    Регистрация:
    15 мар 2006
    Сообщения:
    238
    Адрес:
    Russia
    Вставлю свои пять копеек.
    Подростковая болезнь это, навроде прыщей - желание писать все на асме. Бывает почти у всех начинающих программеров (мож, и у меня было...в легкой форме, гы-гы)). С возрастом это проходит, и приходит понимание, что глючные и тормозные говнопроги с одинаковой вероятностью появляются и у асмокодеров, и у си-плюс-плюсников, и у джавоистов. А вот большой и сложный (и притом быстрый и безглючный) проект куда проще сделать на C++... или на Жабе... и даже на дельфях. Была бы голова за плечами :)
     
  19. _basmp_

    _basmp_ New Member

    Публикаций:
    0
    Регистрация:
    10 июл 2005
    Сообщения:
    2.939
    W4FhLF
    1) Перечитал тот пост. Ни конструктива, ни обид не заметил. Обычная и достаточно сдержаная реакция на полускрытое оскорбление. Хотя наверно у вас лучше зрение.
    2) Вместо советов прощать вам все подряд научились бы сами базар иногда фильтровать. Сразу стали бы востребованей, даже забыв половину того, что знаете и умеете (как-то вы заметили, что отвечать мне вас побуждает только моя наиграная вежливость. Мотайте на ус. Кстати говоря и тут вы правы. Вежливость моя не врожденная. Ношу тк зверски выгодно. А по жизни я бык тоже).
    3) Вы уже и так на 'ты'. Ну а я на 'вы' со всеми кто в онлайне и по работе. Если я выделю вас и начну тыкать только вам одному остальные могут обидеться. Не вежливо это, да и меня может занести. Как вам понравится мато-украинский разбавленый феней? 'Вы' - это предохранитель.

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

    За сим, дико старавшийся вас не задеть basmp с двумя черточками.