Malcolm, насчет "объемности" assembler кода ты прав. Файл на ассемблере весит 7,35 кб а этот же файл в java-чистом виде - 1,53 кб, кроме того java не такая запутанная как assembler! Но прога хорошая, особенно если еще дизассемблер появится.
Тоесть для жасмина я пишу так ; получаем ссылку на менеджер дисплея aload_0 aload_0 invokestatic javax/microedition/lcdui/Display/getDisplay(Ljavax/microedition/midlet/MIDlet;)Ljavax/microedition/lcdui/Display; putfield Main/display Ljavax/microedition/lcdui/Display; А на компе это будет выглядеть короче. Напишите как это на компе выглядит.
И обьясните про aload_0 когда пишется какая цифра, когда эта команда два раза пишется? И про .limit stack 3 .limit locals 1 Как узнать какие числа там писать?
DDDEN!SSS, всего одной строчкой: display = Display.getDisplay(this); Это самая стандартная операция в мидлете. Chersanya1, я написал, что не используется для написания программ.
как бы там нибыло , и на чём бы ты ниписал , всё буит пердеводится в код , а для компияторов и языков написать мож скок хочеш . если я те покажу цифру 5 , то ты допустим должен буиш сделать движение рукой , а эт мож быть и иконст 5 и инт5 да чё хош , лижб компиль понимал и компилил . а его можн сделать любым и свой язык написать
Vitos_boy, не понял я чо ты этим хотел сказать. Если компелятор будет понимать код то это не значет что код будет работать. Я спрашивал когда надо писать aload_0 и что значит этот ноль. И limit stack , limit locals.
limit stack <целое число> - Указывает максимальное кол-во элементов загружаемых на стек в данном методе. 2 ..limit locals <целое число> - указывает макс. кол-во локальных переменных в данном методе. Как посщитать эти максимальные количество? И где елименты и локальные находятся?
cHeRsAnYa1, а смысл писать в байт-коде то, что можно куда проще написать на Java? Я говорю только про байт-код, другие ассемблеры не будем трогать. aload_0 - код, который загружает в стек значение локальной переменной 0.
3 апр 2008 в 21:27