blezछद्म

blez

छद्म
RISC-V असेंबली संदर्भ

lyszt.net blez और अन्य RISC-V निर्देशों को अधिक विस्तार से कवर करता है।

विवरण

blez एक शाखा लेता है जब रजिस्टर में मान शून्य या ऋणात्मक होता है। नाम का अर्थ है शाखा यदि शून्य से कम या बराबर हो। नीचे दिया गया रूप तब लेबल किए गए स्थान पर कूदता है जब rs अधिकतम शून्य हो, और अन्यथा अगले निर्देश पर गिर जाता है।

blez rs, label

असेम्बलर इसे एक छद्म-निर्देश मानता है और इसे नीचे दिए गए निर्देश में फिर से लिखता है, जो पूछता है कि क्या zero रजिस्टर से अधिक या बराबर है।

bge zero, rs, label

ऑपरेंड्स की अदला-बदली की जाती है क्योंकि RISC-V में कम-या-बराबर शाखा नहीं होती, इसलिए bge काम करता है, उसी तरह जैसे ble बनाया जाता है। तुलना साइन्ड है। शून्य शाखाएँ लेता है, जो blez को bltz से अलग करता है, और यह bgtz का विपरीत है, इसलिए किसी भी मान के लिए दोनों में से ठीक एक शाखा लेता है। अंतर्निहित शाखा के लिए bge देखें।

blez एक ऐसी जाँच के लिए उपयुक्त है कि करने के लिए कुछ बचा नहीं है। शेष वस्तुओं की गिनती को संसाधित करने वाला लूप तब छोड़ सकता है जब गिनती शून्य हो या उससे नीचे चली गई हो।

blez t0, done

ऊपर की पंक्ति done पर कूदती है जब t0 0 या ऋणात्मक हो।

विस्तृत होता है

bge zero, rs, label

असेंबलर इस छद्म-निर्देश को ऊपर सूचीबद्ध वास्तविक निर्देश या निर्देशों से बदल देता है।

उदाहरण

li t0, 0
blez t0, done   # t0 <= 0, so jump to 'done'