लूप इन असेंबली लैंग्वेज

Prahlad Godara ------ From DOOSEEP

लूप निर्देशों का एक ब्लॉक है जिसे एक शर्त पूरी होने तक बार-बार निष्पादित किया जाता है। असेंबली लैंग्वेज लूप्स को लागू करने के लिए JMP इंस्ट्रक्शन का उपयोग करती है। हालाँकि, प्रोसेसर सेट लूप को आसानी से लागू करने के लिए LOOP निर्देश का उपयोग कर सकता है।

Content

असेंबली लैंग्वेज में लूप - सिंटैक्स कार्य और उदाहरण

लूप का उपयोग किसी भी कोड ब्लॉक या निर्देशों के समूह को बार-बार चलाने के लिए किया जाता है।

असेंबली लैंग्वेज में लूप इंस्ट्रक्शन वर्क

LOOP निर्देश की पुनरावृत्ति ECX रजिस्टर में लूप काउंट है। जब लूप निर्देश निष्पादित किया जाता है, ईसीएक्स रजिस्टर कम हो जाता है और लक्ष्य लेबल पर नियंत्रण कूदता है, जब तक ईसीएक्स रजिस्टर का मान 0 नहीं होता है, यानी काउंटर शून्य मान तक पहुंच जाता है।

असेंबली लूप सिंटैक्स

प्रोसेसर निर्देश सेट में पुनरावर्तन को लागू करने के लिए लूप निर्देशों का एक सेट शामिल होता है। लूप को लागू करने के लिए JMP निर्देश का उपयोग किया जा सकता है। जहां, लेबल लक्ष्य लेबल है जो जंप निर्देशों के अनुसार लक्ष्य निर्देश की पहचान करता है।

Syntax
 LOOP 	label

For example

 MOV	CL, 10
  L1:
  -LOOP-BODY-
  DEC	CL
  JNZ	L1

असेंबली लूप उदाहरण

निम्न प्रोग्राम स्क्रीन पर 1 से 8 तक की संख्या को प्रिंट करता है −


  section	.text
  global _start        ;must be declared for using gcc
 
_start:	                ;tell linker entry point
  mov ecx,9
  mov eax, '1'
 
l1:
  mov [num], eax
  mov eax, 4
  mov ebx, 1
  push ecx
 
  mov ecx, num        
  mov edx, 1        
  int 0x80
 
  mov eax, [num]
  sub eax, '0'
  inc eax
  add eax, '0'
  pop ecx
  loop l1
 
  mov eax,1             ;system call number (sys_exit)
  int 0x80              ;call kernel
section	.bss
num resb 1 

जब उपरोक्त कोड संकलित और निष्पादित किया जाता है, तो यह निम्न परिणाम उत्पन्न करता है −

 12345678:


Read in- English
Tags- Loop instructions in nasm assembly language ,education, Assembly loops, assembly language, type of Assembly loop , example program in assembly language, loop in hindi, This blogcreates content similar to stackoverflow geeks for geeks tutorialspoint w3schools and dooseep
कोई टिप्पणी नहीं:
एक टिप्पणी भेजें