Модераторы: Partizan, gambit

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Ассемблерные вставки в C# 
:(
    Опции темы
slavaentp
Дата 25.12.2008, 04:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 141
Регистрация: 17.6.2008

Репутация: нет
Всего: -1



Можно ли их сделать? Если да, то каким образом?

Если нет - то можно ли их как-то прикрутить? Юзаю Visual C# Express.

Отвечаю зачем - учу два этих языка, хочу совместить.
PM MAIL   Вверх
UserNet
Дата 25.12.2008, 12:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 226
Регистрация: 13.12.2006
Где: Новосибирск

Репутация: 1
Всего: 3



Глянь тут.
PM MAIL   Вверх
Romikgy
Дата 25.12.2008, 13:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Любитель-программер
****


Профиль
Группа: Участник Клуба
Сообщений: 7326
Регистрация: 11.5.2005
Где: Porto Franco Odes sa

Репутация: нет
Всего: 146



я не спец в шарпе ,но насколько мне известно это одна из разновидностей байт кодов, он не позволяет работать с асмом напрямую.
то что указано по ссылке выше постом , во первых юзает машиный код , во вторых запуск его осуществляется хакерскими методами , не каждый антивирусник после пропустит данный продукт smile 
да и вооще я не увидел в ссылке ни одной команды на запуск тех асм команд ( машиного кода) :(


--------------------
Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. 
smile

PM   Вверх
Partizan
Дата 25.12.2008, 13:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Let's do some .NET
****


Профиль
Группа: Модератор
Сообщений: 2828
Регистрация: 19.12.2005
Где: Санкт-Петербург

Репутация: 18
Всего: 67



Romikgy, да и вообще судя по тому, что лежит под сцылкой - надо иметь оооооочень веский повод, чтобы обречь себя на этот геморрой...


--------------------
СУВ,
       Partizan.
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
UserNet
Дата 25.12.2008, 14:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 226
Регистрация: 13.12.2006
Где: Новосибирск

Репутация: 1
Всего: 3



Товарищи, я понимю вариант под ссылкой может не слишком удачный, но предложите свой.
PM MAIL   Вверх
Romikgy
Дата 25.12.2008, 14:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Любитель-программер
****


Профиль
Группа: Участник Клуба
Сообщений: 7326
Регистрация: 11.5.2005
Где: Porto Franco Odes sa

Репутация: нет
Всего: 146



смысла юзать асм в шарпе я не вижу(так же как и delphi.net , как java и т.п. ), в нем нет полноценного компилятора, он работает в аналогом байт кода, у него только синтаксис от С++ (частью) 
машиные коды можно по аналогии как и в ссылке запихнуть и выполнить ,но более красивым и безопасным кодом,
а если нужно работать с асмом тогда путь лежить на возюзание С++ или С или дельфи или паскаль это компилируемые языки у них есть компилятор для асм , полноценый.


--------------------
Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. 
smile

PM   Вверх
source777
Дата 25.12.2008, 15:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1878
Регистрация: 12.3.2007

Репутация: 4
Всего: 56



Цитата(Romikgy @  25.12.2008,  14:18 Найти цитируемый пост)
смысла юзать асм в шарпе я не вижу

+1, это не только бессмысленно, но может быть и вредно для здоровья  smile  


--------------------
Если бы программистам платили за то, чтобы убирать код из программы вместо того, чтобы добавлять его, программы были бы намного лучше © Николас Негропонте
PM MAIL   Вверх
slavaentp
Дата 25.12.2008, 21:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 141
Регистрация: 17.6.2008

Репутация: нет
Всего: -1



Цитата
я не спец в шарпе ,но насколько мне известно это одна из разновидностей байт кодов, он не позволяет работать с асмом напрямую.

Можете расшифровать, что это такое? Не понимаю.

Ведь любая программа в итоге является кодом на ассемблере(точнее - машинным кодом, который расшифровывает ассемблер).
PM MAIL   Вверх
Romikgy
Дата 25.12.2008, 21:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Любитель-программер
****


Профиль
Группа: Участник Клуба
Сообщений: 7326
Регистрация: 11.5.2005
Где: Porto Franco Odes sa

Репутация: нет
Всего: 146



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


--------------------
Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. 
smile

PM   Вверх
source777
Дата 25.12.2008, 23:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1878
Регистрация: 12.3.2007

Репутация: 4
Всего: 56



Цитата(slavaentp @  25.12.2008,  21:19 Найти цитируемый пост)
Ведь любая программа в итоге является кодом на ассемблере(точнее - машинным кодом, который расшифровывает ассемблер). 

Не совсем корректная трактовка, программы делятся на 3 вида: 
  •  системные программы (работают напрямую с железом, пишутся на чистом Си и асме, как правило такие программы жёстко привязаны к конкретному железу, классический пример - драйвер устройства)
  •  приложения операционной системы (жёстко привязаны к конкретной ОС, иногда даже к конкретной версии ОС)
  •  приложения виртуальной машины (вообще ни к чему не привязаны, работают везде, где есть реализация данной виртуальной машины), именно этого вида приложения создаются на C# и на Java.



--------------------
Если бы программистам платили за то, чтобы убирать код из программы вместо того, чтобы добавлять его, программы были бы намного лучше © Николас Негропонте
PM MAIL   Вверх
Romikgy
Дата 25.12.2008, 23:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Любитель-программер
****


Профиль
Группа: Участник Клуба
Сообщений: 7326
Регистрация: 11.5.2005
Где: Porto Franco Odes sa

Репутация: нет
Всего: 146



Цитата(source777 @  25.12.2008,  22:12 Найти цитируемый пост)
    *  приложения виртуальной машины (вообще ни к чему не привязаны, работают везде, где есть реализация данной виртуальной машины), именно этого вида приложения создаются на C# и на Java.


дот нета вроде в никсах нет , это вроде сугубо виндовая хня


--------------------
Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. 
smile

PM   Вверх
jonie
Дата 25.12.2008, 23:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 5613
Регистрация: 21.8.2005
Где: Владимир

Репутация: 22
Всего: 118



Romikgy тебе наврали


--------------------
Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет...
PM MAIL Jabber   Вверх
Romikgy
Дата 26.12.2008, 00:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Любитель-программер
****


Профиль
Группа: Участник Клуба
Сообщений: 7326
Регистрация: 11.5.2005
Где: Porto Franco Odes sa

Репутация: нет
Всего: 146



да реально наврали (а точнее инфа устарела)
тогда у дот нета появилась кросплатформеность , эт хорошо но это альтернатива а не фул поддержка, ну да ладно это отдельнаяпесня,
а по теме , тогда вообще пропал смысл обходить в си шарпе платформу дот нет ибо убивается кросплатформеность , уж тем более не говорю уже об опускании до низкоуровнего программирования типа асм


--------------------
Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. 
smile

PM   Вверх
source777
Дата 26.12.2008, 00:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1878
Регистрация: 12.3.2007

Репутация: 4
Всего: 56



Цитата(Romikgy @  26.12.2008,  00:11 Найти цитируемый пост)
тогда у дот нета появилась кросплатформеность , эт хорошо но это альтернатива а не фул поддержка
JVM тоже имеет несколько реализаций, сути это нисколечко не меняет. А суть в том, что если язык компилируется  в некий байт-код, исполняемый некой виртуальной машиной, то программа на этом языке может быть запущена на любой ОС, ну как минимум теоретически.  smile 
Ещё более теоретически возможно создание процессоров, которые исполняют не машинный код, а непосредственно байт-код, в принципе это вполне возможно и в таком случае утверждение 
Цитата

любая программа в итоге является кодом на ассемблере(точнее - машинным кодом, который расшифровывает ассемблер). 
 станет не только неточным, но вообще полностью неверным. 



--------------------
Если бы программистам платили за то, чтобы убирать код из программы вместо того, чтобы добавлять его, программы были бы намного лучше © Николас Негропонте
PM MAIL   Вверх
Zakonnic
Дата 26.12.2008, 18:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 161
Регистрация: 25.4.2006

Репутация: 2
Всего: 6



В управляемый код можно делать вставки обычного для использования указателей и прочих низкоуровневых вкусностей. Посмотрите в справке по ключевому слову unsafe. Тем не менее, с внедрением в С# asm-кода я не сталкивался. Как вариант - создать проект на Visual C++ и юзать вставки там (см. кейворд __asm), а затем подключит сборку к сишарповскому и вызывать эти супер-пупер-быстрые методы  smile 

Это сообщение отредактировал(а) Zakonnic - 26.12.2008, 18:50
--------------------
...и никогда не пишите в комментариях правду
PM MAIL ICQ   Вверх
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




[ Время генерации скрипта: 0.0564 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.