⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 logarmfwliu

📁 自己编写的ARM处理器的指令集仿真
💻
📖 第 1 页 / 共 5 页
字号:
fwriteliu:     file format elf32-littlearmDisassembly of section .text:00008000 <_mainCRTStartup>:    8000:	e3a00016 	mov	r0, #22	; 0x16    8004:	e28f10c4 	add	r1, pc, #196	; 0xc4    8008:	ef123456 	swi	0x00123456    800c:	e59f00bc 	ldr	r0, [pc, #bc]	; 80d0 <_mainCRTStartup+0xd0>    8010:	e590d008 	ldr	sp, [r0, #8]    8014:	e590a00c 	ldr	sl, [r0, #12]    8018:	e28aac01 	add	sl, sl, #256	; 0x100    801c:	e3a01000 	mov	r1, #0	; 0x0    8020:	e1a0b001 	mov	fp, r1    8024:	e1a07001 	mov	r7, r1    8028:	e59f00a4 	ldr	r0, [pc, #a4]	; 80d4 <_mainCRTStartup+0xd4>    802c:	e59f20a4 	ldr	r2, [pc, #a4]	; 80d8 <_mainCRTStartup+0xd8>    8030:	e0422000 	sub	r2, r2, r0    8034:	eb0006f6 	bl	9c14 <memset>    8038:	eb000902 	bl	a448 <initialise_monitor_handles>    803c:	e3a00015 	mov	r0, #21	; 0x15    8040:	e28f1094 	add	r1, pc, #148	; 0x94    8044:	ef123456 	swi	0x00123456    8048:	e59f108c 	ldr	r1, [pc, #8c]	; 80dc <_mainCRTStartup+0xdc>    804c:	e3a00000 	mov	r0, #0	; 0x0    8050:	e4d13001 	ldrb	r3, [r1], #1    8054:	e3530000 	cmp	r3, #0	; 0x0    8058:	0a000011 	beq	80a4 <_mainCRTStartup+0xa4>    805c:	e3530020 	cmp	r3, #32	; 0x20    8060:	0afffffa 	beq	8050 <_mainCRTStartup+0x50>    8064:	e3530022 	cmp	r3, #34	; 0x22    8068:	13530027 	cmpne	r3, #39	; 0x27    806c:	01a02003 	moveq	r2, r3    8070:	13a02020 	movne	r2, #32	; 0x20    8074:	12411001 	subne	r1, r1, #1	; 0x1    8078:	e92d0002 	stmdb	sp!, {r1}    807c:	e2800001 	add	r0, r0, #1	; 0x1    8080:	e4d13001 	ldrb	r3, [r1], #1    8084:	e3530000 	cmp	r3, #0	; 0x0    8088:	0a000005 	beq	80a4 <_mainCRTStartup+0xa4>    808c:	e1520003 	cmp	r2, r3    8090:	1afffffa 	bne	8080 <_mainCRTStartup+0x80>    8094:	e3a02000 	mov	r2, #0	; 0x0    8098:	e2413001 	sub	r3, r1, #1	; 0x1    809c:	e5c32000 	strb	r2, [r3]    80a0:	eaffffea 	b	8050 <_mainCRTStartup+0x50>    80a4:	e1a0100d 	mov	r1, sp    80a8:	e08d2100 	add	r2, sp, r0, lsl #2    80ac:	e1a0300d 	mov	r3, sp    80b0:	e1520003 	cmp	r2, r3    80b4:	85124004 	ldrhi	r4, [r2, -#4]    80b8:	85935000 	ldrhi	r5, [r3]    80bc:	85225004 	strhi	r5, [r2, -#4]!    80c0:	84834004 	strhi	r4, [r3], #4    80c4:	8afffff9 	bhi	80b0 <_mainCRTStartup+0xb0>    80c8:	eb000005 	bl	80e4 <main>    80cc:	eb0000d7 	bl	8430 <exit>    80d0:	00011904 	andeq	r1, r1, r4, lsl #18    80d4:	00012168 	andeq	r2, r1, r8, ror #2    80d8:	0001229c 	muleq	r1, ip, r2    80dc:	00011914 	andeq	r1, r1, r4, lsl r9    80e0:	000000ff 	streqd	r0, [r0], -pc000080e4 <main>:    80e4:	e1a0c00d 	mov	ip, sp    80e8:	e92dd810 	stmdb	sp!, {r4, fp, ip, lr, pc}    80ec:	e24cb004 	sub	fp, ip, #4	; 0x4    80f0:	e24dd00c 	sub	sp, sp, #12	; 0xc    80f4:	eb0000a1 	bl	8380 <__gccmain>    80f8:	e59f016c 	ldr	r0, [pc, #16c]	; 826c <main+0x188>    80fc:	e59f116c 	ldr	r1, [pc, #16c]	; 8270 <main+0x18c>    8100:	eb00083d 	bl	a1fc <strcpy>    8104:	e59f4160 	ldr	r4, [pc, #160]	; 826c <main+0x188>    8108:	e59f0160 	ldr	r0, [pc, #160]	; 8270 <main+0x18c>    810c:	eb000858 	bl	a274 <strlen>    8110:	e5840014 	str	r0, [r4, #20]    8114:	e59f0158 	ldr	r0, [pc, #158]	; 8274 <main+0x190>    8118:	e59f1158 	ldr	r1, [pc, #158]	; 8278 <main+0x194>    811c:	eb000836 	bl	a1fc <strcpy>    8120:	e59f4144 	ldr	r4, [pc, #144]	; 826c <main+0x188>    8124:	e59f014c 	ldr	r0, [pc, #14c]	; 8278 <main+0x194>    8128:	eb000851 	bl	a274 <strlen>    812c:	e584002c 	str	r0, [r4, #44]    8130:	e59f0144 	ldr	r0, [pc, #144]	; 827c <main+0x198>    8134:	e59f1144 	ldr	r1, [pc, #144]	; 8280 <main+0x19c>    8138:	eb00082f 	bl	a1fc <strcpy>    813c:	e59f4128 	ldr	r4, [pc, #128]	; 826c <main+0x188>    8140:	e59f0138 	ldr	r0, [pc, #138]	; 8280 <main+0x19c>    8144:	eb00084a 	bl	a274 <strlen>    8148:	e5840044 	str	r0, [r4, #68]    814c:	e59f0130 	ldr	r0, [pc, #130]	; 8284 <main+0x1a0>    8150:	e59f1130 	ldr	r1, [pc, #130]	; 8288 <main+0x1a4>    8154:	eb00020f 	bl	8998 <fopen>    8158:	e1a03000 	mov	r3, r0    815c:	e50b3014 	str	r3, [fp, -#20]    8160:	e59f0124 	ldr	r0, [pc, #124]	; 828c <main+0x1a8>    8164:	e59f1100 	ldr	r1, [pc, #100]	; 826c <main+0x188>    8168:	eb0006f1 	bl	9d34 <printf>    816c:	e59f011c 	ldr	r0, [pc, #11c]	; 8290 <main+0x1ac>    8170:	e59f10fc 	ldr	r1, [pc, #fc]	; 8274 <main+0x190>    8174:	eb0006ee 	bl	9d34 <printf>    8178:	e59f0114 	ldr	r0, [pc, #114]	; 8294 <main+0x1b0>    817c:	e59f10f8 	ldr	r1, [pc, #f8]	; 827c <main+0x198>    8180:	eb0006eb 	bl	9d34 <printf>    8184:	e59f010c 	ldr	r0, [pc, #10c]	; 8298 <main+0x1b4>    8188:	eb0006e9 	bl	9d34 <printf>    818c:	e59f00d8 	ldr	r0, [pc, #d8]	; 826c <main+0x188>    8190:	e3a01018 	mov	r1, #24	; 0x18    8194:	e3a02003 	mov	r2, #3	; 0x3    8198:	e51b3014 	ldr	r3, [fp, -#20]    819c:	eb00044d 	bl	92d8 <fwrite>    81a0:	e59f00f4 	ldr	r0, [pc, #f4]	; 829c <main+0x1b8>    81a4:	eb0006e2 	bl	9d34 <printf>    81a8:	e51b0014 	ldr	r0, [fp, -#20]    81ac:	eb0000be 	bl	84ac <fclose>    81b0:	e59f00cc 	ldr	r0, [pc, #cc]	; 8284 <main+0x1a0>    81b4:	e59f10e4 	ldr	r1, [pc, #e4]	; 82a0 <main+0x1bc>    81b8:	eb0001f6 	bl	8998 <fopen>    81bc:	e1a03000 	mov	r3, r0    81c0:	e50b3014 	str	r3, [fp, -#20]    81c4:	e59f00d8 	ldr	r0, [pc, #d8]	; 82a4 <main+0x1c0>    81c8:	eb0006d9 	bl	9d34 <printf>    81cc:	e59f0098 	ldr	r0, [pc, #98]	; 826c <main+0x188>    81d0:	e3a01018 	mov	r1, #24	; 0x18    81d4:	e3a02003 	mov	r2, #3	; 0x3    81d8:	e51b3014 	ldr	r3, [fp, -#20]    81dc:	eb0001f8 	bl	89c4 <fread>    81e0:	e59f00c0 	ldr	r0, [pc, #c0]	; 82a8 <main+0x1c4>    81e4:	eb0006d2 	bl	9d34 <printf>    81e8:	e51b0014 	ldr	r0, [fp, -#20]    81ec:	eb0000ae 	bl	84ac <fclose>    81f0:	e3a03000 	mov	r3, #0	; 0x0    81f4:	e50b3018 	str	r3, [fp, -#24]    81f8:	e51b3018 	ldr	r3, [fp, -#24]    81fc:	e3530002 	cmp	r3, #2	; 0x2    8200:	da000000 	ble	8208 <main+0x124>    8204:	ea000029 	b	82b0 <main+0x1cc>    8208:	e51b2018 	ldr	r2, [fp, -#24]    820c:	e1a03002 	mov	r3, r2    8210:	e1a03083 	mov	r3, r3, lsl #1    8214:	e0833002 	add	r3, r3, r2    8218:	e1a02183 	mov	r2, r3, lsl #3    821c:	e59f1048 	ldr	r1, [pc, #48]	; 826c <main+0x188>    8220:	e0823001 	add	r3, r2, r1    8224:	e59f2040 	ldr	r2, [pc, #40]	; 826c <main+0x188>    8228:	e51bc018 	ldr	ip, [fp, -#24]    822c:	e1a0100c 	mov	r1, ip    8230:	e1a01081 	mov	r1, r1, lsl #1    8234:	e081100c 	add	r1, r1, ip    8238:	e1a0c181 	mov	ip, r1, lsl #3    823c:	e2822014 	add	r2, r2, #20	; 0x14    8240:	e792100c 	ldr	r1, [r2, ip]    8244:	e58d1000 	str	r1, [sp]    8248:	e59f005c 	ldr	r0, [pc, #5c]	; 82ac <main+0x1c8>    824c:	e51b1018 	ldr	r1, [fp, -#24]    8250:	e1a02003 	mov	r2, r3    8254:	e51b3018 	ldr	r3, [fp, -#24]    8258:	eb0006b5 	bl	9d34 <printf>    825c:	e51b3018 	ldr	r3, [fp, -#24]    8260:	e2832001 	add	r2, r3, #1	; 0x1    8264:	e50b2018 	str	r2, [fp, -#24]    8268:	eaffffe2 	b	81f8 <main+0x114>    826c:	00012250 	andeq	r2, r1, r0, asr r2    8270:	00011540 	andeq	r1, r1, r0, asr #10    8274:	00012268 	andeq	r2, r1, r8, ror #4    8278:	00011548 	andeq	r1, r1, r8, asr #10    827c:	00012280 	andeq	r2, r1, r0, lsl #5    8280:	00011554 	andeq	r1, r1, r4, asr r5    8284:	00011560 	andeq	r1, r1, r0, ror #10    8288:	00011568 	andeq	r1, r1, r8, ror #10    828c:	0001156c 	andeq	r1, r1, ip, ror #10    8290:	00011574 	andeq	r1, r1, r4, ror r5    8294:	0001157c 	andeq	r1, r1, ip, ror r5    8298:	00011584 	andeq	r1, r1, r4, lsl #11    829c:	00011598 	muleq	r1, r8, r5    82a0:	000115a8 	andeq	r1, r1, r8, lsr #11    82a4:	000115ac 	andeq	r1, r1, ip, lsr #11    82a8:	000115bc 	streqh	r1, [r1], -ip    82ac:	000115cc 	andeq	r1, r1, ip, asr #11    82b0:	e91ba810 	ldmdb	fp, {r4, fp, sp, pc}000082b4 <__do_global_dtors>:    82b4:	e1a0c00d 	mov	ip, sp    82b8:	e92dd810 	stmdb	sp!, {r4, fp, ip, lr, pc}    82bc:	e59f103c 	ldr	r1, [pc, #3c]	; 8300 <__do_global_dtors+0x4c>    82c0:	e5913000 	ldr	r3, [r1]    82c4:	e5932000 	ldr	r2, [r3]    82c8:	e24cb004 	sub	fp, ip, #4	; 0x4    82cc:	e3520000 	cmp	r2, #0	; 0x0    82d0:	091ba810 	ldmeqdb	fp, {r4, fp, sp, pc}    82d4:	e1a04001 	mov	r4, r1    82d8:	e5943000 	ldr	r3, [r4]    82dc:	e2833004 	add	r3, r3, #4	; 0x4    82e0:	e5843000 	str	r3, [r4]    82e4:	e1a0e00f 	mov	lr, pc    82e8:	e513f004 	ldr	pc, [r3, -#4]    82ec:	e5942000 	ldr	r2, [r4]    82f0:	e5923000 	ldr	r3, [r2]    82f4:	e3530000 	cmp	r3, #0	; 0x0    82f8:	1afffff6 	bne	82d8 <__do_global_dtors+0x24>    82fc:	e91ba810 	ldmdb	fp, {r4, fp, sp, pc}    8300:	00011a14 	andeq	r1, r1, r4, lsl sl00008304 <__do_global_ctors>:    8304:	e1a0c00d 	mov	ip, sp    8308:	e92dd870 	stmdb	sp!, {r4, r5, r6, fp, ip, lr, pc}    830c:	e59f3064 	ldr	r3, [pc, #64]	; 8378 <__do_global_ctors+0x74>    8310:	e59f6064 	ldr	r6, [pc, #64]	; 837c <__do_global_ctors+0x78>    8314:	e24cb004 	sub	fp, ip, #4	; 0x4    8318:	e5932000 	ldr	r2, [r3]    831c:	e1a05003 	mov	r5, r3    8320:	e3720001 	cmn	r2, #1	; 0x1    8324:	1a00000a 	bne	8354 <__do_global_ctors+0x50>    8328:	e3a01004 	mov	r1, #4	; 0x4    832c:	e7953001 	ldr	r3, [r5, r1]    8330:	e3a02000 	mov	r2, #0	; 0x0    8334:	e1530002 	cmp	r3, r2    8338:	0a000005 	beq	8354 <__do_global_ctors+0x50>    833c:	e1a00005 	mov	r0, r5    8340:	e2811004 	add	r1, r1, #4	; 0x4    8344:	e7903001 	ldr	r3, [r0, r1]    8348:	e2822001 	add	r2, r2, #1	; 0x1    834c:	e3530000 	cmp	r3, #0	; 0x0    8350:	1afffffa 	bne	8340 <__do_global_ctors+0x3c>    8354:	e2524000 	subs	r4, r2, #0	; 0x0    8358:	0a000003 	beq	836c <__do_global_ctors+0x68>    835c:	e1a0e00f 	mov	lr, pc    8360:	e795f104 	ldr	pc, [r5, r4, lsl #2]    8364:	e2544001 	subs	r4, r4, #1	; 0x1    8368:	1afffffb 	bne	835c <__do_global_ctors+0x58>    836c:	e1a00006 	mov	r0, r6    8370:	eb00000e 	bl	83b0 <atexit>    8374:	e91ba870 	ldmdb	fp, {r4, r5, r6, fp, sp, pc}    8378:	00012158 	andeq	r2, r1, r8, asr r1    837c:	000082b4 	streqh	r8, [r0], -r400008380 <__gccmain>:    8380:	e1a0c00d 	mov	ip, sp    8384:	e92dd800 	stmdb	sp!, {fp, ip, lr, pc}    8388:	e59f201c 	ldr	r2, [pc, #1c]	; 83ac <__gccmain+0x2c>    838c:	e5923000 	ldr	r3, [r2]    8390:	e24cb004 	sub	fp, ip, #4	; 0x4    8394:	e3530000 	cmp	r3, #0	; 0x0    8398:	191ba800 	ldmnedb	fp, {fp, sp, pc}    839c:	e3a03001 	mov	r3, #1	; 0x1    83a0:	e5823000 	str	r3, [r2]    83a4:	ebffffd6 	bl	8304 <__do_global_ctors>    83a8:	e91ba800 	ldmdb	fp, {fp, sp, pc}    83ac:	00012170 	andeq	r2, r1, r0, ror r1000083b0 <atexit>:    83b0:	e1a0c00d 	mov	ip, sp    83b4:	e92dd830 	stmdb	sp!, {r4, r5, fp, ip, lr, pc}    83b8:	e59f506c 	ldr	r5, [pc, #6c]	; 842c <atexit+0x7c>    83bc:	e5953000 	ldr	r3, [r5]    83c0:	e24cb004 	sub	fp, ip, #4	; 0x4    83c4:	e5931148 	ldr	r1, [r3, #328]    83c8:	e1a04000 	mov	r4, r0    83cc:	e3510000 	cmp	r1, #0	; 0x0    83d0:	02831f53 	addeq	r1, r3, #332	; 0x14c    83d4:	05831148 	streq	r1, [r3, #328]    83d8:	e5913004 	ldr	r3, [r1, #4]    83dc:	e353001f 	cmp	r3, #31	; 0x1f    83e0:	da00000a 	ble	8410 <atexit+0x60>    83e4:	e3a00088 	mov	r0, #136	; 0x88    83e8:	eb000425 	bl	9484 <malloc>    83ec:	e2501000 	subs	r1, r0, #0	; 0x0    83f0:	03e00000 	mvneq	r0, #0	; 0x0    83f4:	091ba830 	ldmeqdb	fp, {r4, r5, fp, sp, pc}    83f8:	e3a03000 	mov	r3, #0	; 0x0    83fc:	e5813004 	str	r3, [r1, #4]    8400:	e5952000 	ldr	r2, [r5]    8404:	e5923148 	ldr	r3, [r2, #328]    8408:	e5813000 	str	r3, [r1]    840c:	e5821148 	str	r1, [r2, #328]    8410:	e3a00000 	mov	r0, #0	; 0x0    8414:	e5913004 	ldr	r3, [r1, #4]    8418:	e2812008 	add	r2, r1, #8	; 0x8    841c:	e7824103 	str	r4, [r2, r3, lsl #2]    8420:	e2833001 	add	r3, r3, #1	; 0x1    8424:	e5813004 	str	r3, [r1, #4]    8428:	e91ba830 	ldmdb	fp, {r4, r5, fp, sp, pc}    842c:	00011d0c 	andeq	r1, r1, ip, lsl #2600008430 <exit>:    8430:	e1a0c00d 	mov	ip, sp    8434:	e92dd800 	stmdb	sp!, {fp, ip, lr, pc}    8438:	e59f2064 	ldr	r2, [pc, #64]	; 84a4 <exit+0x74>    843c:	e24cb004 	sub	fp, ip, #4	; 0x4    8440:	e5923000 	ldr	r3, [r2]    8444:	e1a07000 	mov	r7, r0    8448:	e5936148 	ldr	r6, [r3, #328]    844c:	e1a08002 	mov	r8, r2    8450:	e3560000 	cmp	r6, #0	; 0x0    8454:	0a00000a 	beq	8484 <exit+0x54>    8458:	e5964004 	ldr	r4, [r6, #4]    845c:	e2544001 	subs	r4, r4, #1	; 0x1    8460:	4a000004 	bmi	8478 <exit+0x48>    8464:	e2865008 	add	r5, r6, #8	; 0x8    8468:	e1a0e00f 	mov	lr, pc    846c:	e795f104 	ldr	pc, [r5, r4, lsl #2]    8470:	e2544001 	subs	r4, r4, #1	; 0x1    8474:	5afffffb 	bpl	8468 <exit+0x38>    8478:	e5966000 	ldr	r6, [r6]    847c:	e3560000 	cmp	r6, #0	; 0x0    8480:	1afffff4 	bne	8458 <exit+0x28>    8484:	e5980000 	ldr	r0, [r8]    8488:	e590303c 	ldr	r3, [r0, #60]    848c:	e3530000 	cmp	r3, #0	; 0x0    8490:	0a000001 	beq	849c <exit+0x6c>    8494:	e1a0e00f 	mov	lr, pc    8498:	e1a0f003 	mov	pc, r3    849c:	e1a00007 	mov	r0, r7    84a0:	eb000928 	bl	a948 <_exit>    84a4:	00011d0c 	andeq	r1, r1, ip, lsl #26    84a8:	e91ba9f0 	ldmdb	fp, {r4, r5, r6, r7, r8, fp, sp, pc}000084ac <fclose>:    84ac:	e1a0c00d 	mov	ip, sp    84b0:	e92dd830 	stmdb	sp!, {r4, r5, fp, ip, lr, pc}    84b4:	e24cb004 	sub	fp, ip, #4	; 0x4    84b8:	e2504000 	subs	r4, r0, #0	; 0x0    84bc:	01a00004 	moveq	r0, r4    84c0:	091ba830 	ldmeqdb	fp, {r4, r5, fp, sp, pc}    84c4:	e5943054 	ldr	r3, [r4, #84]    84c8:	e3530000 	cmp	r3, #0	; 0x0    84cc:	059f30c4 	ldreq	r3, [pc, #c4]	; 8598 <fclose+0xec>    84d0:	05932000 	ldreq	r2, [r3]    84d4:	05842054 	streq	r2, [r4, #84]    84d8:	e5940054 	ldr	r0, [r4, #84]

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -