· Начало · Отвђтить · Статистика · Поиск · FAQ · Правила · Установки · Язык · Выход · WASM.RU · Noir.Ru ·

 WASM Phorum —› WASM.ASSEMBLER —› armasm

Посл.отвђт Сообщенiе


Дата: Сен 4, 2004 12:18:10

Всем привет, вот этот код вроде как должен распечатывать содержимое r0 в хекс виде (я тока начинаю arm изучать, так что получилось скорее всего криво)
		include		wince.inc
	
		IMPORT	MessageBoxW
		IMPORT	ExitThread

		EXPORT	start

		AREA		.text, CODE
start
		mov		R1, #14 			;счетчик
		adr		R2,	mestext
	
loop
		mov		R3, R0
		and		R3, R3, #0xF
		cmp		R3, #0xA
		add		R3, R3, #0x30
		addge	R3, R3, #0x11
		strb	R3, [R2, R1]
		mov		R0, R0, ror #4
		subs	r1, r1, #2
		bmi		loop
message		
		eor		R0, R0, R0
		adr		R1, mestext
		adr		R2, mestit
		mov		R3, #MB_OK
		bl		MessageBoxW
		
		eor		R0, R0, R0
		bl		ExitThread
	
mestext		dcw	0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0	
mestit		dcb	"H",0,"E",0,"X",0,0,0
	
		END

Собствено на девайсе при выполнении выдается ошибка.
Без строки
 
strb	R3, [R2, R1] 

все работает.
Я как-то не так юзаю эту инсрукцию?


Дата: Сен 8, 2004 16:53:45

Отвечу сам себе, вдруг кому понадобится )
		include		wince.inc
	
		IMPORT	MessageBoxW
		IMPORT	ExitThread

		EXPORT	start

		AREA		.text, CODE
start
		mov 	R0, #0x13
		mov		R1, #14 			;счетчик
		ldr		R2,	=mestext
	
loop
		mov		R3, R0
		and		R3, R3, #0xF
		cmp		R3, #0xA
		add		R3, R3, #0x30
		addge	R3, R3, #0x11
		strb	R3, [R2, R1]
		mov		R0, R0, ror #4
		subs	r1, r1, #2
		bpl		loop
message		
		eor		R0, R0, R0
		ldr		R1, =mestext
		ldr		R2, =mestit
		mov		R3, #MB_OK
		bl		MessageBoxW
		
		eor		R0, R0, R0
		bl		ExitThread
	
		AREA		.data, DATA
		
mestext		dcw	0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0	
mestit		dcb	"H",0,"E",0,"X",0,0,0
	
		END


Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.088