How can I push a long onto the stack using java bytecode? -
aload_0 aload_0 sipush 2377 अभिनव खेल / इंजन / सर्वर बनाओगैमसेरवर्ससेट (I) लाजावा / नेट / सॉकेट; हाय दोस्तों, मेरे ऊपर कोड का यह टुकड़ा है क्या कोई मुझे बता सकता है कि मैं मूल्यों के बजाय स्टैक पर एक लंबा मूल्य कैसे लोड करूंगा, जो कि समर्थन करता है? मुझे लगता है कि यह 32768 +/-
का समर्थन करता है, इससे मुझे एक उच्च संख्या की आवश्यकता है, लेकिन मैं नहीं जानता कि कैसे लंबे मूल्य का उपयोग करने के बारे में जाना है, या इससे बड़ा कुछ भी।
मदद की सराहना की है।
sipush 2377 & lt; सॉकेट का बंदरगाह है, मुझे इसे बदलने की आवश्यकता है।
हाँ, मुझे बाइटकोड का उपयोग करने की आवश्यकता है।
संपादित करें, जो वास्तव में आप चाहते हैं वह एक इंट है, जो कि एक छोटा नहीं है ऐसा करने के लिए, एलडीसी या ldc_w निर्देश का उपयोग करें। (एलडीसी केवल 255 तक लगातार पुल इंडेक्स के लिए प्रयोग करने योग्य है। जब संदेह में, ldc_w का उपयोग करें, क्योंकि यह हमेशा काम करता है) स्टैक पर लगातार लंबे समय तक धक्का करने के लिए, आपको ldc2_w निर्देश हालांकि, क्योंकि जिस फ़ंक्शन पर आप कॉल करने का प्रयास कर रहे हैं वह लंबा नहीं लेता है, यह मदद नहीं करेगा। उदाहरण यह क्राकातु कोडांतरक वाक्यविन्यास का उपयोग करता है। मैं इसे जस्मीन में भी काम करता हूं।
aload_0 aload_0 ldc_w 2377 अभिनव खेल / इंजन / सर्वर हुक बनाएंगैमसेरवर सॉकेट (I) Ljava / net / सॉकेट;
Comments
Post a Comment