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

📄 log

📁 自己编写的ARM处理器的指令集仿真
💻
📖 第 1 页 / 共 5 页
字号:
hello:     file format elf32-littlearmDisassembly of section .text:00000000 <_mainCRTStartup>:       0:	e3a00016 	mov	r0, #22	; 0x16       4:	e28f10c4 	add	r1, pc, #196	; 0xc4       8:	ef123456 	swi	0x00123456       c:	e59f00bc 	ldr	r0, [pc, #bc]	; d0 <*ABS*+0xd0>      10:	e590d008 	ldr	sp, [r0, #8]      14:	e590a00c 	ldr	sl, [r0, #12]      18:	e28aac01 	add	sl, sl, #256	; 0x100      1c:	e3a01000 	mov	r1, #0	; 0x0      20:	e1a0b001 	mov	fp, r1      24:	e1a07001 	mov	r7, r1      28:	e59f00a4 	ldr	r0, [pc, #a4]	; d4 <*ABS*+0xd4>      2c:	e59f20a4 	ldr	r2, [pc, #a4]	; d8 <*ABS*+0xd8>      30:	e0422000 	sub	r2, r2, r0      34:	eb000270 	bl	9fc <memset>      38:	eb00031e 	bl	cb8 <initialise_monitor_handles>      3c:	e3a00015 	mov	r0, #21	; 0x15      40:	e28f1094 	add	r1, pc, #148	; 0x94      44:	ef123456 	swi	0x00123456      48:	e59f108c 	ldr	r1, [pc, #8c]	; dc <*ABS*+0xdc>      4c:	e3a00000 	mov	r0, #0	; 0x0      50:	e4d13001 	ldrb	r3, [r1], #1      54:	e3530000 	cmp	r3, #0	; 0x0      58:	0a000011 	beq	a4 <*ABS*+0xa4>      5c:	e3530020 	cmp	r3, #32	; 0x20      60:	0afffffa 	beq	50 <*ABS*+0x50>      64:	e3530022 	cmp	r3, #34	; 0x22      68:	13530027 	cmpne	r3, #39	; 0x27      6c:	01a02003 	moveq	r2, r3      70:	13a02020 	movne	r2, #32	; 0x20      74:	12411001 	subne	r1, r1, #1	; 0x1      78:	e92d0002 	stmdb	sp!, {r1}      7c:	e2800001 	add	r0, r0, #1	; 0x1      80:	e4d13001 	ldrb	r3, [r1], #1      84:	e3530000 	cmp	r3, #0	; 0x0      88:	0a000005 	beq	a4 <*ABS*+0xa4>      8c:	e1520003 	cmp	r2, r3      90:	1afffffa 	bne	80 <*ABS*+0x80>      94:	e3a02000 	mov	r2, #0	; 0x0      98:	e2413001 	sub	r3, r1, #1	; 0x1      9c:	e5c32000 	strb	r2, [r3]      a0:	eaffffea 	b	50 <*ABS*+0x50>      a4:	e1a0100d 	mov	r1, sp      a8:	e08d2100 	add	r2, sp, r0, lsl #2      ac:	e1a0300d 	mov	r3, sp      b0:	e1520003 	cmp	r2, r3      b4:	85124004 	ldrhi	r4, [r2, -#4]      b8:	85935000 	ldrhi	r5, [r3]      bc:	85225004 	strhi	r5, [r2, -#4]!      c0:	84834004 	strhi	r4, [r3], #4      c4:	8afffff9 	bhi	b0 <*ABS*+0xb0>      c8:	eb000005 	bl	e4 <main>      cc:	eb00006c 	bl	284 <exit>      d0:	00008c38 	andeq	r8, r0, r8, lsr ip      d4:	0000949c 	muleq	r0, ip, r4      d8:	0000957c 	andeq	r9, r0, ip, ror r5      dc:	00008c48 	andeq	r8, r0, r8, asr #24      e0:	000000ff 	streqd	r0, [r0], -pc000000e4 <main>:      e4:	e1a0c00d 	mov	ip, sp      e8:	e92dd800 	stmdb	sp!, {fp, ip, lr, pc}      ec:	e24cb004 	sub	fp, ip, #4	; 0x4      f0:	eb000037 	bl	1d4 <__gccmain>      f4:	e59f0004 	ldr	r0, [pc, #4]	; 100 <main+0x1c>      f8:	eb000274 	bl	ad0 <printf>      fc:	ea000000 	b	104 <main+0x20>     100:	0000890c 	andeq	r8, r0, ip, lsl #18     104:	e91ba800 	ldmdb	fp, {fp, sp, pc}00000108 <__do_global_dtors>:     108:	e1a0c00d 	mov	ip, sp     10c:	e92dd810 	stmdb	sp!, {r4, fp, ip, lr, pc}     110:	e59f103c 	ldr	r1, [pc, #3c]	; 154 <__do_global_dtors+0x4c>     114:	e5913000 	ldr	r3, [r1]     118:	e5932000 	ldr	r2, [r3]     11c:	e24cb004 	sub	fp, ip, #4	; 0x4     120:	e3520000 	cmp	r2, #0	; 0x0     124:	091ba810 	ldmeqdb	fp, {r4, fp, sp, pc}     128:	e1a04001 	mov	r4, r1     12c:	e5943000 	ldr	r3, [r4]     130:	e2833004 	add	r3, r3, #4	; 0x4     134:	e5843000 	str	r3, [r4]     138:	e1a0e00f 	mov	lr, pc     13c:	e513f004 	ldr	pc, [r3, -#4]     140:	e5942000 	ldr	r2, [r4]     144:	e5923000 	ldr	r3, [r2]     148:	e3530000 	cmp	r3, #0	; 0x0     14c:	1afffff6 	bne	12c <__do_global_dtors+0x24>     150:	e91ba810 	ldmdb	fp, {r4, fp, sp, pc}     154:	00008d48 	andeq	r8, r0, r8, asr #2600000158 <__do_global_ctors>:     158:	e1a0c00d 	mov	ip, sp     15c:	e92dd870 	stmdb	sp!, {r4, r5, r6, fp, ip, lr, pc}     160:	e59f3064 	ldr	r3, [pc, #64]	; 1cc <__do_global_ctors+0x74>     164:	e59f6064 	ldr	r6, [pc, #64]	; 1d0 <__do_global_ctors+0x78>     168:	e24cb004 	sub	fp, ip, #4	; 0x4     16c:	e5932000 	ldr	r2, [r3]     170:	e1a05003 	mov	r5, r3     174:	e3720001 	cmn	r2, #1	; 0x1     178:	1a00000a 	bne	1a8 <__do_global_ctors+0x50>     17c:	e3a01004 	mov	r1, #4	; 0x4     180:	e7953001 	ldr	r3, [r5, r1]     184:	e3a02000 	mov	r2, #0	; 0x0     188:	e1530002 	cmp	r3, r2     18c:	0a000005 	beq	1a8 <__do_global_ctors+0x50>     190:	e1a00005 	mov	r0, r5     194:	e2811004 	add	r1, r1, #4	; 0x4     198:	e7903001 	ldr	r3, [r0, r1]     19c:	e2822001 	add	r2, r2, #1	; 0x1     1a0:	e3530000 	cmp	r3, #0	; 0x0     1a4:	1afffffa 	bne	194 <__do_global_ctors+0x3c>     1a8:	e2524000 	subs	r4, r2, #0	; 0x0     1ac:	0a000003 	beq	1c0 <__do_global_ctors+0x68>     1b0:	e1a0e00f 	mov	lr, pc     1b4:	e795f104 	ldr	pc, [r5, r4, lsl #2]     1b8:	e2544001 	subs	r4, r4, #1	; 0x1     1bc:	1afffffb 	bne	1b0 <__do_global_ctors+0x58>     1c0:	e1a00006 	mov	r0, r6     1c4:	eb00000e 	bl	204 <atexit>     1c8:	e91ba870 	ldmdb	fp, {r4, r5, r6, fp, sp, pc}     1cc:	0000948c 	andeq	r9, r0, ip, lsl #9     1d0:	00000108 	andeq	r0, r0, r8, lsl #2000001d4 <__gccmain>:     1d4:	e1a0c00d 	mov	ip, sp     1d8:	e92dd800 	stmdb	sp!, {fp, ip, lr, pc}     1dc:	e59f201c 	ldr	r2, [pc, #1c]	; 200 <__gccmain+0x2c>     1e0:	e5923000 	ldr	r3, [r2]     1e4:	e24cb004 	sub	fp, ip, #4	; 0x4     1e8:	e3530000 	cmp	r3, #0	; 0x0     1ec:	191ba800 	ldmnedb	fp, {fp, sp, pc}     1f0:	e3a03001 	mov	r3, #1	; 0x1     1f4:	e5823000 	str	r3, [r2]     1f8:	ebffffd6 	bl	158 <__do_global_ctors>     1fc:	e91ba800 	ldmdb	fp, {fp, sp, pc}     200:	0000949c 	muleq	r0, ip, r400000204 <atexit>:     204:	e1a0c00d 	mov	ip, sp     208:	e92dd830 	stmdb	sp!, {r4, r5, fp, ip, lr, pc}     20c:	e59f506c 	ldr	r5, [pc, #6c]	; 280 <atexit+0x7c>     210:	e5953000 	ldr	r3, [r5]     214:	e24cb004 	sub	fp, ip, #4	; 0x4     218:	e5931148 	ldr	r1, [r3, #328]     21c:	e1a04000 	mov	r4, r0     220:	e3510000 	cmp	r1, #0	; 0x0     224:	02831f53 	addeq	r1, r3, #332	; 0x14c     228:	05831148 	streq	r1, [r3, #328]     22c:	e5913004 	ldr	r3, [r1, #4]     230:	e353001f 	cmp	r3, #31	; 0x1f     234:	da00000a 	ble	264 <atexit+0x60>     238:	e3a00088 	mov	r0, #136	; 0x88     23c:	eb00002f 	bl	300 <malloc>     240:	e2501000 	subs	r1, r0, #0	; 0x0     244:	03e00000 	mvneq	r0, #0	; 0x0     248:	091ba830 	ldmeqdb	fp, {r4, r5, fp, sp, pc}     24c:	e3a03000 	mov	r3, #0	; 0x0     250:	e5813004 	str	r3, [r1, #4]     254:	e5952000 	ldr	r2, [r5]     258:	e5923148 	ldr	r3, [r2, #328]     25c:	e5813000 	str	r3, [r1]     260:	e5821148 	str	r1, [r2, #328]     264:	e3a00000 	mov	r0, #0	; 0x0     268:	e5913004 	ldr	r3, [r1, #4]     26c:	e2812008 	add	r2, r1, #8	; 0x8     270:	e7824103 	str	r4, [r2, r3, lsl #2]     274:	e2833001 	add	r3, r3, #1	; 0x1     278:	e5813004 	str	r3, [r1, #4]     27c:	e91ba830 	ldmdb	fp, {r4, r5, fp, sp, pc}     280:	00009040 	andeq	r9, r0, r0, asr #3200000284 <exit>:     284:	e1a0c00d 	mov	ip, sp     288:	e92dd800 	stmdb	sp!, {fp, ip, lr, pc}     28c:	e59f2064 	ldr	r2, [pc, #64]	; 2f8 <exit+0x74>     290:	e24cb004 	sub	fp, ip, #4	; 0x4     294:	e5923000 	ldr	r3, [r2]     298:	e1a07000 	mov	r7, r0     29c:	e5936148 	ldr	r6, [r3, #328]     2a0:	e1a08002 	mov	r8, r2     2a4:	e3560000 	cmp	r6, #0	; 0x0     2a8:	0a00000a 	beq	2d8 <exit+0x54>     2ac:	e5964004 	ldr	r4, [r6, #4]     2b0:	e2544001 	subs	r4, r4, #1	; 0x1     2b4:	4a000004 	bmi	2cc <exit+0x48>     2b8:	e2865008 	add	r5, r6, #8	; 0x8     2bc:	e1a0e00f 	mov	lr, pc     2c0:	e795f104 	ldr	pc, [r5, r4, lsl #2]     2c4:	e2544001 	subs	r4, r4, #1	; 0x1     2c8:	5afffffb 	bpl	2bc <exit+0x38>     2cc:	e5966000 	ldr	r6, [r6]     2d0:	e3560000 	cmp	r6, #0	; 0x0     2d4:	1afffff4 	bne	2ac <exit+0x28>     2d8:	e5980000 	ldr	r0, [r8]     2dc:	e590303c 	ldr	r3, [r0, #60]     2e0:	e3530000 	cmp	r3, #0	; 0x0     2e4:	0a000001 	beq	2f0 <exit+0x6c>     2e8:	e1a0e00f 	mov	lr, pc     2ec:	e1a0f003 	mov	pc, r3     2f0:	e1a00007 	mov	r0, r7     2f4:	eb0003af 	bl	11b8 <_exit>     2f8:	00009040 	andeq	r9, r0, r0, asr #32     2fc:	e91ba9f0 	ldmdb	fp, {r4, r5, r6, r7, r8, fp, sp, pc}00000300 <malloc>:     300:	e1a0c00d 	mov	ip, sp     304:	e92dd800 	stmdb	sp!, {fp, ip, lr, pc}     308:	e59f3010 	ldr	r3, [pc, #10]	; 320 <malloc+0x20>     30c:	e1a01000 	mov	r1, r0     310:	e5930000 	ldr	r0, [r3]     314:	e24cb004 	sub	fp, ip, #4	; 0x4     318:	eb000081 	bl	524 <_malloc_r>     31c:	e91ba800 	ldmdb	fp, {fp, sp, pc}     320:	00009040 	andeq	r9, r0, r0, asr #3200000324 <free>:     324:	e1a0c00d 	mov	ip, sp     328:	e92dd800 	stmdb	sp!, {fp, ip, lr, pc}     32c:	e59f3010 	ldr	r3, [pc, #10]	; 344 <free+0x20>     330:	e1a01000 	mov	r1, r0     334:	e5930000 	ldr	r0, [r3]     338:	e24cb004 	sub	fp, ip, #4	; 0x4     33c:	eb00110f 	bl	4780 <_free_r>     340:	e91ba800 	ldmdb	fp, {fp, sp, pc}     344:	00009040 	andeq	r9, r0, r0, asr #3200000348 <malloc_extend_top>:     348:	e1a0c00d 	mov	ip, sp     34c:	e92ddff0 	stmdb	sp!, {r4, r5, r6, r7, r8, r9, sl, fp, ip, lr, pc}     350:	e24cb004 	sub	fp, ip, #4	; 0x4     354:	e59fc1b0 	ldr	ip, [pc, #1b0]	; 50c <malloc_extend_top+0x1c4>     358:	e59f31b0 	ldr	r3, [pc, #1b0]	; 510 <malloc_extend_top+0x1c8>     35c:	e59fa1b0 	ldr	sl, [pc, #1b0]	; 514 <malloc_extend_top+0x1cc>     360:	e59c8008 	ldr	r8, [ip, #8]     364:	e5932000 	ldr	r2, [r3]     368:	e1a09000 	mov	r9, r0     36c:	e5983004 	ldr	r3, [r8, #4]     370:	e0812002 	add	r2, r1, r2     374:	e2826010 	add	r6, r2, #16	; 0x10     378:	e3c37003 	bic	r7, r3, #3	; 0x3     37c:	e59a1000 	ldr	r1, [sl]     380:	e0884007 	add	r4, r8, r7     384:	e3710001 	cmn	r1, #1	; 0x1     388:	12823a01 	addne	r3, r2, #4096	; 0x1000     38c:	1283300f 	addne	r3, r3, #15	; 0xf     390:	13c36eff 	bicne	r6, r3, #4080	; 0xff0     394:	13c6600f 	bicne	r6, r6, #15	; 0xf     398:	e1a00009 	mov	r0, r9     39c:	e1a01006 	mov	r1, r6     3a0:	eb0001d9 	bl	b0c <_sbrk_r>     3a4:	e1a05000 	mov	r5, r0     3a8:	e3750001 	cmn	r5, #1	; 0x1     3ac:	091baff0 	ldmeqdb	fp, {r4, r5, r6, r7, r8, r9, sl, fp, sp, pc}     3b0:	e1550004 	cmp	r5, r4     3b4:	2a000002 	bcs	3c4 <malloc_extend_top+0x7c>     3b8:	e59f214c 	ldr	r2, [pc, #14c]	; 50c <malloc_extend_top+0x1c4>     3bc:	e1580002 	cmp	r8, r2     3c0:	191baff0 	ldmnedb	fp, {r4, r5, r6, r7, r8, r9, sl, fp, sp, pc}     3c4:	e59f314c 	ldr	r3, [pc, #14c]	; 518 <malloc_extend_top+0x1d0>     3c8:	e5932000 	ldr	r2, [r3]     3cc:	e1550004 	cmp	r5, r4     3d0:	e0822006 	add	r2, r2, r6     3d4:	e5832000 	str	r2, [r3]     3d8:	1a000005 	bne	3f4 <malloc_extend_top+0xac>     3dc:	e59f3128 	ldr	r3, [pc, #128]	; 50c <malloc_extend_top+0x1c4>     3e0:	e0860007 	add	r0, r6, r7     3e4:	e5932008 	ldr	r2, [r3, #8]     3e8:	e3803001 	orr	r3, r0, #1	; 0x1     3ec:	e5823004 	str	r3, [r2, #4]     3f0:	ea00003a 	b	4e0 <malloc_extend_top+0x198>     3f4:	e59a3000 	ldr	r3, [sl]     3f8:	e3730001 	cmn	r3, #1	; 0x1     3fc:	058a5000 	streq	r5, [sl]     400:	10643005 	rsbne	r3, r4, r5     404:	10823003 	addne	r3, r2, r3     408:	159f2108 	ldrne	r2, [pc, #108]	; 518 <malloc_extend_top+0x1d0>     40c:	15823000 	strne	r3, [r2]     410:	e2853008 	add	r3, r5, #8	; 0x8     414:	e2131007 	ands	r1, r3, #7	; 0x7     418:	12614008 	rsbne	r4, r1, #8	; 0x8     41c:	10855004 	addne	r5, r5, r4     420:	01a04001 	moveq	r4, r1     424:	e0853006 	add	r3, r5, r6     428:	e1a03a03 	mov	r3, r3, lsl #20     42c:	e1a03a23 	mov	r3, r3, lsr #20     430:	e2633a01 	rsb	r3, r3, #4096	; 0x1000     434:	e0844003 	add	r4, r4, r3     438:	e1a00009 	mov	r0, r9     43c:	e1a01004 	mov	r1, r4     440:	eb0001b1 	bl	b0c <_sbrk_r>     444:	e3700001 	cmn	r0, #1	; 0x1     448:	091baff0 	ldmeqdb	fp, {r4, r5, r6, r7, r8, r9, sl, fp, sp, pc}     44c:	e0653000 	rsb	r3, r5, r0     450:	e0830004 	add	r0, r3, r4     454:	e59f30bc 	ldr	r3, [pc, #bc]	; 518 <malloc_extend_top+0x1d0>     458:	e5932000 	ldr	r2, [r3]     45c:	e59f30a8 	ldr	r3, [pc, #a8]	; 50c <malloc_extend_top+0x1c4>     460:	e5835008 	str	r5, [r3, #8]     464:	e1580003 	cmp	r8, r3     468:	e59f30a8 	ldr	r3, [pc, #a8]	; 518 <malloc_extend_top+0x1d0>     46c:	e0822004 	add	r2, r2, r4     470:	e5832000 	str	r2, [r3]     474:	e3803001 	orr	r3, r0, #1	; 0x1     478:	e5853004 	str	r3, [r5, #4]     47c:	0a000017 	beq	4e0 <malloc_extend_top+0x198>     480:	e357000f 	cmp	r7, #15	; 0xf     484:	8a000004 	bhi	49c <malloc_extend_top+0x154>     488:	e59f307c 	ldr	r3, [pc, #7c]	; 50c <malloc_extend_top+0x1c4>     48c:	e5932008 	ldr	r2, [r3, #8]     490:	e3a03001 	mov	r3, #1	; 0x1     494:	e5823004 	str	r3, [r2, #4]     498:	e91baff0 	ldmdb	fp, {r4, r5, r6, r7, r8, r9, sl, fp, sp, pc}     49c:	e247200c 	sub	r2, r7, #12	; 0xc     4a0:	e3c27007 	bic	r7, r2, #7	; 0x7     4a4:	e357000f 	cmp	r7, #15	; 0xf     4a8:	e3a01004 	mov	r1, #4	; 0x4     4ac:	e5983004 	ldr	r3, [r8, #4]     4b0:	e3a02005 	mov	r2, #5	; 0x5     4b4:	e2033001 	and	r3, r3, #1	; 0x1     4b8:	e1833007 	orr	r3, r3, r7     4bc:	e5883004 	str	r3, [r8, #4]     4c0:	e0883007 	add	r3, r8, r7     4c4:	e7832001 	str	r2, [r3, r1]     4c8:	e0833001 	add	r3, r3, r1     4cc:	e5832004 	str	r2, [r3, #4]     4d0:	9a000002 	bls	4e0 <malloc_extend_top+0x198>     4d4:	e1a00009 	mov	r0, r9     4d8:	e2881008 	add	r1, r8, #8	; 0x8     4dc:	eb0010a7 	bl	4780 <_free_r>

⌨️ 快捷键说明

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