Add ES/Lab/LAB4/GCD.asm
This commit is contained in:
		
							parent
							
								
									0afb3ab4bd
								
							
						
					
					
						commit
						c51f88103e
					
				
					 1 changed files with 41 additions and 0 deletions
				
			
		
							
								
								
									
										41
									
								
								ES/Lab/LAB4/GCD.asm
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										41
									
								
								ES/Lab/LAB4/GCD.asm
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,41 @@
 | 
			
		|||
	AREA RESET, DATA, READONLY
 | 
			
		||||
	EXPORT __Vectors
 | 
			
		||||
__Vectors
 | 
			
		||||
	DCD 0x10001000
 | 
			
		||||
	DCD Reset_Handler
 | 
			
		||||
	ALIGN
 | 
			
		||||
 | 
			
		||||
	AREA MYCODE, CODE, READONLY
 | 
			
		||||
	ENTRY
 | 
			
		||||
	EXPORT Reset_Handler
 | 
			
		||||
 | 
			
		||||
Reset_Handler
 | 
			
		||||
	MOV	r0, #48
 | 
			
		||||
	MOV	r1, #18
 | 
			
		||||
 | 
			
		||||
GCD_Loop
 | 
			
		||||
	CMP	r0, r1
 | 
			
		||||
	BEQ	GCD_Done
 | 
			
		||||
	BGT	GT_A_B
 | 
			
		||||
	SUB	r1, r1, r0
 | 
			
		||||
	B	GCD_Loop
 | 
			
		||||
 | 
			
		||||
GT_A_B
 | 
			
		||||
	SUB	r0, r0, r1
 | 
			
		||||
	B	GCD_Loop
 | 
			
		||||
 | 
			
		||||
GCD_Done
 | 
			
		||||
	LDR	r2, =result
 | 
			
		||||
	STR	r0, [r2]
 | 
			
		||||
 | 
			
		||||
LoopForever
 | 
			
		||||
	B	LoopForever
 | 
			
		||||
 | 
			
		||||
	ALIGN
 | 
			
		||||
 | 
			
		||||
	AREA MYDATA, DATA, READWRITE
 | 
			
		||||
numA	DCD	48
 | 
			
		||||
numB	DCD	18
 | 
			
		||||
result	DCD	0
 | 
			
		||||
 | 
			
		||||
	END
 | 
			
		||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue