Начинаем программировать на C++, C#, ассемблере(win), Qt, Python, Java, AS3.

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by nerezus, 29 Oct 2008.

  1. cheater_man

    cheater_man Member

    Joined:
    13 Nov 2009
    Messages:
    651
    Likes Received:
    44
    Reputations:
    7
    MSIL(сейчас CIL) - промежуточный язык, разработанный фирмой Microsoft для платформы .NET Framework.
    пример MSIL:
    Code:
     IL_0008:  ldloc.0
                ldloc.1
                rem
                brfalse.s  IL_0000
                ldloc.1
                ldc.i4.1
                add
                stloc.1
      IL_0011:  ldloc.1
    
    ребят где же вы двоичный код увидили?
     
  2. GRRRL Power

    GRRRL Power Elder - Старейшина

    Joined:
    13 Jul 2010
    Messages:
    823
    Likes Received:
    185
    Reputations:
    84
    Я могу также написать:

    Code:
    mov eax, 100h
    mov edx, eax
    xor edx, 200h
    movzh ah, byte ptr[esi]
    
    Где же ассемблерные инструкции двоичные? Это же текст!

    А MSIL содержит инструкции в бинарном виде. А это что значит? То что он двоичный. Другое дело, что это не код под x86, но во время исполнения он транслируется в нативные опкоды.

    Вы путаете понятия "двоичный" и "x86-опкоды".
     
  3. Bers

    Bers Member

    Joined:
    17 May 2010
    Messages:
    78
    Likes Received:
    30
    Reputations:
    26
    Язык ассемблера — язык программирования низкого уровня. В отличие от языка машинных кодов, позволяет использовать более удобные для человека мнемонические (символьные) обозначения команд.
    Пример ассемблерного кода:
    Code:
    xinvoke MACRO name:REQ, params:VARARG
    	count = 0
    	FOR xparam, <params>
    	  count = count + 1
    	  @CatStr(var,%count) TEXTEQU @CatStr(&xparam)
    	ENDM
    
    	REPEAT count
    	  push @CatStr(var,%count)
    	  count = count - 1
    	ENDM
    
    	mov eax,name
    	call eax
    ENDM
    
    Ребята, где же вы двоичный код увидели?

    По-моему, я только что доказал, что x86-ассемблер не имеет никакого отношения к двоичным кодам. Он вообще текстовый! Стало быть, для православного человека остается только один выход - писать все прямо в машинных кодах.



    Ладно, если серьезно - что x86-инструкции, что IL-инструкции, что LLVM-инструкции, что JVM-инструкции - это все двоичные машинные команды под некую виртуальную машину. По-моему, это вообще очевидно.
    UPD: Внесу ясность: в случае с x86/x64 виртуальная машина реализована аппаратно (хотя и не в ядре процессора), в остальных случаях она реализована как разновидность JIT компилятора.
     
    #723 Bers, 24 Aug 2010
    Last edited: 24 Aug 2010
  4. cheater_man

    cheater_man Member

    Joined:
    13 Nov 2009
    Messages:
    651
    Likes Received:
    44
    Reputations:
    7
    Sorry, да это действительно так.
    Тогда неужели Msil - это набор инструкции процессора?
     
  5. miako

    miako Member

    Joined:
    20 Jan 2010
    Messages:
    154
    Likes Received:
    13
    Reputations:
    5
    Интересно, какой проц поддерживает данные инструкции на аппаратном уровне? :)
     
  6. Bers

    Bers Member

    Joined:
    17 May 2010
    Messages:
    78
    Likes Received:
    30
    Reputations:
    26
    Виртуального - да. Что это меняет? Принципиально вполне возможна и аппаратная реализация (как для Java, например).
     
  7. rudvil

    rudvil Elder - Старейшина

    Joined:
    25 Aug 2008
    Messages:
    200
    Likes Received:
    29
    Reputations:
    0
    [QT]
    Что нужно прописать в аргументах configure.exe чтобы, он создал makefile только нужных мне статических библиотек, без всяких там demos, examples...
    Пока только такое смог сделать, но все равно куча лишнего.
    т.б. нужен только статический QtCore и его подклассы http://doc.qt.nokia.com/4.6/qtcore.html
     
  8. shadowmaster

    shadowmaster New Member

    Joined:
    16 Aug 2010
    Messages:
    17
    Likes Received:
    0
    Reputations:
    0
    пишу прогу на C# в функционале которой есть кейлогер через SetWindowsHookEx.
    Сказали вызывает излишнюю нагрузку системы.
    Интересуют другие способы перехвата клавиш клавиатуры, не только при активном окне этой программы.
     
  9. Bers

    Bers Member

    Joined:
    17 May 2010
    Messages:
    78
    Likes Received:
    30
    Reputations:
    26
    Посмотри вот этот пример. Возможно, чем-то поможет.
     
  10. shadowmaster

    shadowmaster New Member

    Joined:
    16 Aug 2010
    Messages:
    17
    Likes Received:
    0
    Reputations:
    0
    То что надо !
    немного модифицировать SequenceInterceptor оставив в нем функцию накопления с выводом в файл и убрать предложенное ограничение на его размер =)
     
  11. Actor

    Actor New Member

    Joined:
    10 Jan 2010
    Messages:
    6
    Likes Received:
    0
    Reputations:
    0
    вторая ссылка на книгу по асму вроде с трояном, перезалейте плз
     
  12. maked0n

    maked0n New Member

    Joined:
    14 Sep 2010
    Messages:
    144
    Likes Received:
    3
    Reputations:
    0
    Подскажите пожалуйста хорошую книгу на русском по написанию игр под DirectX на C++
     
    #732 maked0n, 25 Sep 2010
    Last edited: 25 Sep 2010
  13. Scripter

    Scripter Member

    Joined:
    3 Sep 2008
    Messages:
    141
    Likes Received:
    95
    Reputations:
    6
    никакую, тем более русскую. Читай DirectX SDK, иначе потом поймешь, что зря потратил время.
     
  14. Richard_Kalt

    Richard_Kalt New Member

    Joined:
    7 Oct 2010
    Messages:
    6
    Likes Received:
    0
    Reputations:
    0
    Здарова ребят подскажите мне нужно написать магазин с админкой и шопинг картой я энтим не занимался с чего начать только на Google не посылать именно хочеться пообщяться с человеком который этим занимался спасиба
     
  15. Edward

    Edward Banned

    Joined:
    11 Feb 2010
    Messages:
    329
    Likes Received:
    21
    Reputations:
    -1
    начать стоит с выбора языка программирования, а только потом читать маны по направлению.
     
  16. Richard_Kalt

    Richard_Kalt New Member

    Joined:
    7 Oct 2010
    Messages:
    6
    Likes Received:
    0
    Reputations:
    0
    Да забыл указать C# на ASP.Net 3.5
     
  17. maked0n

    maked0n New Member

    Joined:
    14 Sep 2010
    Messages:
    144
    Likes Received:
    3
    Reputations:
    0
    начни с чтения книги. вот то что знаю: http://www.brain2life.com/book/328.html
    если ты не знаешь C#, то начни с книги "C# для чайников", потом читай http://www.brain2life.com/book/489.html (последнюю часть, там где разбирается создание интерфейса).
    Я читал именно эти книги.
     
  18. j-prof

    j-prof Banned

    Joined:
    29 Aug 2010
    Messages:
    321
    Likes Received:
    11
    Reputations:
    -4
    помойму .нет уже много где предустановлен
    +много пользовательского софта требующего .нет
    так что полюбак он будет стоять
    99% во всяком случае точно ;)
     
  19. miako

    miako Member

    Joined:
    20 Jan 2010
    Messages:
    154
    Likes Received:
    13
    Reputations:
    5
    Версии то разные, и может не стоять нужной. Да и 99% это не 100% :) Дотнеты для бизнес-логики; ниша взлома\шпионства и т.д. явно не их конек.
     
  20. .brynet

    .brynet New Member

    Joined:
    25 Feb 2010
    Messages:
    0
    Likes Received:
    1
    Reputations:
    0
    Adobe Flex Builder 3.0 (компилятор action scrtipt) - у кого остался? с первого поста его не качает, ссылка битая.
    залейте пожалуйста,или ссылку в Л/С.благодарю.