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

📄 time.lst

📁 一个类linux的dos下开发的操作系统.
💻 LST
📖 第 1 页 / 共 3 页
字号:

time.x:     file format coff-go32

Disassembly of section .text:

40000000 <_code>:
40000000:	74 69                	je     4000006b <_main+0x4b>
40000002:	6d                   	insl   (%dx),%es:(%edi)
40000003:	65 20 69 73          	and    %ch,%gs:0x73(%ecx)
40000007:	20 25 30 32 75 3a    	and    %ah,0x3a753230
4000000d:	25 30 32 75 3a       	and    $0x3a753230,%eax
40000012:	25 30 32 75 0a       	and    $0xa753230,%eax
40000017:	00 89 88 88 88 ab    	add    %cl,0xab888888(%ecx)
4000001d:	aa                   	stos   %al,%es:(%edi)
4000001e:	aa                   	stos   %al,%es:(%edi)
4000001f:	aa                   	stos   %al,%es:(%edi)

40000020 <_main>:
_main():
time.c:17
{
	unsigned char min, sec, hour;
	time_t t;

	while(1)
40000020:	55                   	push   %ebp
40000021:	89 e5                	mov    %esp,%ebp
40000023:	83 ec 0c             	sub    $0xc,%esp
40000026:	57                   	push   %edi
40000027:	8b 3d 18 00 00 40    	mov    0x40000018,%edi
4000002d:	56                   	push   %esi
4000002e:	53                   	push   %ebx
4000002f:	90                   	nop    
time.c:20
	{
/* get time */
		t = time(NULL);
40000030:	83 c4 f4             	add    $0xfffffff4,%esp
40000033:	6a 00                	push   $0x0
40000035:	e8 76 00 00 00       	call   400000b0 <_time>
4000003a:	89 c3                	mov    %eax,%ebx
time.c:22
/* convert to HH:MM:SS */
		sec = t % 60;
4000003c:	f7 e7                	mul    %edi,%eax
4000003e:	89 d1                	mov    %edx,%ecx
40000040:	c1 e9 05             	shr    $0x5,%ecx
40000043:	89 ca                	mov    %ecx,%edx
40000045:	c1 e2 04             	shl    $0x4,%edx
40000048:	29 ca                	sub    %ecx,%edx
4000004a:	8d 04 95 00 00 00 00 	lea    0x0(,%edx,4),%eax
40000051:	28 c3                	sub    %al,%bl
time.c:24
		t /= 60;
		min = t % 60;
40000053:	89 c8                	mov    %ecx,%eax
40000055:	f7 e7                	mul    %edi,%eax
40000057:	89 d6                	mov    %edx,%esi
40000059:	c1 ee 05             	shr    $0x5,%esi
4000005c:	89 f0                	mov    %esi,%eax
4000005e:	c1 e0 04             	shl    $0x4,%eax
40000061:	29 f0                	sub    %esi,%eax
40000063:	c1 e0 02             	shl    $0x2,%eax
40000066:	28 c1                	sub    %al,%cl
time.c:26
		t /= 60;
		hour = t % 24;
40000068:	89 f0                	mov    %esi,%eax
4000006a:	f7 25 1c 00 00 40    	mul    0x4000001c,%eax
40000070:	c1 ea 04             	shr    $0x4,%edx
40000073:	8d 04 52             	lea    (%edx,%edx,2),%eax
40000076:	c1 e0 03             	shl    $0x3,%eax
40000079:	89 f2                	mov    %esi,%edx
4000007b:	28 c2                	sub    %al,%dl
time.c:29
		t /= 24;
/* print it */
		printf("time is %02u:%02u:%02u\n", hour, min, sec);
4000007d:	31 c0                	xor    %eax,%eax
4000007f:	88 d8                	mov    %bl,%al
40000081:	50                   	push   %eax
40000082:	31 c0                	xor    %eax,%eax
40000084:	88 c8                	mov    %cl,%al
40000086:	50                   	push   %eax
40000087:	31 c0                	xor    %eax,%eax
40000089:	88 d0                	mov    %dl,%al
4000008b:	50                   	push   %eax
4000008c:	68 00 00 00 40       	push   $0x40000000
40000091:	e8 3a 00 00 00       	call   400000d0 <_printf>
time.c:31
/* 1-second delay */
		sleep(1000000);
40000096:	83 c4 20             	add    $0x20,%esp
40000099:	83 c4 f4             	add    $0xfffffff4,%esp
4000009c:	68 40 42 0f 00       	push   $0xf4240
400000a1:	e8 4a 00 00 00       	call   400000f0 <_sleep>
time.c:32
	}
400000a6:	83 c4 10             	add    $0x10,%esp
400000a9:	eb 85                	jmp    40000030 <_main+0x10>

400000ab <.ef>:
time.c:34
	return 0;
}
400000ab:	90                   	nop    
400000ac:	8d 74 26 00          	lea    0x0(%esi,1),%esi

400000b0 <_time>:
_time():
time.c:7
400000b0:	55                   	push   %ebp
400000b1:	89 e5                	mov    %esp,%ebp
time.c:10
400000b3:	b8 0a 00 00 00       	mov    $0xa,%eax
time.c:7
400000b8:	8b 55 08             	mov    0x8(%ebp),%edx
time.c:10
400000bb:	cd 30                	int    $0x30
time.c:13
400000bd:	85 d2                	test   %edx,%edx
400000bf:	74 02                	je     400000c3 <_time+0x13>
time.c:14
400000c1:	89 02                	mov    %eax,(%edx)
time.c:15
400000c3:	89 ec                	mov    %ebp,%esp
400000c5:	5d                   	pop    %ebp
400000c6:	c3                   	ret    

400000c7 <.ef>:
time.c:16
400000c7:	89 f6                	mov    %esi,%esi
400000c9:	8d bc 27 00 00 00 00 	lea    0x0(%edi,1),%edi

400000d0 <_printf>:
_printf():
printf.c:9
400000d0:	55                   	push   %ebp
400000d1:	89 e5                	mov    %esp,%ebp
400000d3:	83 ec 08             	sub    $0x8,%esp
400000d6:	8d 45 0c             	lea    0xc(%ebp),%eax
printf.c:10
400000d9:	83 c4 f8             	add    $0xfffffff8,%esp
400000dc:	50                   	push   %eax
400000dd:	8b 45 08             	mov    0x8(%ebp),%eax
400000e0:	50                   	push   %eax
400000e1:	e8 4a 00 00 00       	call   40000130 <_vprintf>
printf.c:12
400000e6:	89 ec                	mov    %ebp,%esp
400000e8:	5d                   	pop    %ebp
400000e9:	c3                   	ret    

400000ea <.ef>:
printf.c:13
400000ea:	8d b6 00 00 00 00    	lea    0x0(%esi),%esi

400000f0 <_sleep>:
_sleep():
sleep.c:5
400000f0:	55                   	push   %ebp
400000f1:	89 e5                	mov    %esp,%ebp
400000f3:	53                   	push   %ebx
sleep.c:6
400000f4:	b8 0c 00 00 00       	mov    $0xc,%eax
sleep.c:5
400000f9:	8b 5d 08             	mov    0x8(%ebp),%ebx
sleep.c:6
400000fc:	cd 30                	int    $0x30
400000fe:	5b                   	pop    %ebx
400000ff:	89 ec                	mov    %ebp,%esp
40000101:	5d                   	pop    %ebp
40000102:	c3                   	ret    

40000103 <.ef>:
40000103:	8d b6 00 00 00 00    	lea    0x0(%esi),%esi
40000109:	8d bc 27 00 00 00 00 	lea    0x0(%edi,1),%edi

40000110 <_vprintf_help>:
_vprintf_help():
vprintf.c:8
40000110:	55                   	push   %ebp
40000111:	89 e5                	mov    %esp,%ebp
40000113:	83 ec 08             	sub    $0x8,%esp
40000116:	83 c4 f8             	add    $0xfffffff8,%esp
40000119:	68 18 10 00 40       	push   $0x40001018
4000011e:	0f be 45 08          	movsbl 0x8(%ebp),%eax
40000122:	50                   	push   %eax
40000123:	e8 28 00 00 00       	call   40000150 <_fputc>
vprintf.c:9
40000128:	31 c0                	xor    %eax,%eax
4000012a:	89 ec                	mov    %ebp,%esp
4000012c:	5d                   	pop    %ebp
4000012d:	c3                   	ret    

4000012e <.ef>:
4000012e:	89 f6                	mov    %esi,%esi

40000130 <_vprintf>:
_vprintf():
vprintf.c:14
40000130:	55                   	push   %ebp
40000131:	89 e5                	mov    %esp,%ebp
40000133:	83 ec 08             	sub    $0x8,%esp
40000136:	8b 55 08             	mov    0x8(%ebp),%edx
40000139:	8b 45 0c             	mov    0xc(%ebp),%eax
vprintf.c:15
4000013c:	6a 00                	push   $0x0
4000013e:	68 10 01 00 40       	push   $0x40000110
40000143:	50                   	push   %eax
40000144:	52                   	push   %edx
40000145:	e8 a6 00 00 00       	call   400001f0 <_do_printf>
4000014a:	89 ec                	mov    %ebp,%esp
4000014c:	5d                   	pop    %ebp
4000014d:	c3                   	ret    

4000014e <.ef>:
4000014e:	89 f6                	mov    %esi,%esi

40000150 <_fputc>:
_fputc():
fputc.c:6
40000150:	55                   	push   %ebp
40000151:	89 e5                	mov    %esp,%ebp
40000153:	83 ec 0c             	sub    $0xc,%esp
40000156:	57                   	push   %edi
40000157:	56                   	push   %esi
40000158:	53                   	push   %ebx
40000159:	8b 75 08             	mov    0x8(%ebp),%esi
4000015c:	8b 5d 0c             	mov    0xc(%ebp),%ebx
fputc.c:10
4000015f:	89 f7                	mov    %esi,%edi
fputc.c:11
40000161:	83 7b 10 00          	cmpl   $0x0,0x10(%ebx)
40000165:	74 06                	je     4000016d <_fputc+0x1d>
40000167:	83 7b 08 00          	cmpl   $0x0,0x8(%ebx)
4000016b:	75 23                	jne    40000190 <_fputc+0x40>
fputc.c:13
4000016d:	89 f8                	mov    %edi,%eax
4000016f:	88 45 ff             	mov    %al,0xffffffff(%ebp)
fputc.c:14
40000172:	83 c4 fc             	add    $0xfffffffc,%esp
40000175:	6a 01                	push   $0x1
40000177:	8d 45 ff             	lea    0xffffffff(%ebp),%eax
4000017a:	50                   	push   %eax
4000017b:	8b 43 14             	mov    0x14(%ebx),%eax
4000017e:	50                   	push   %eax
4000017f:	e8 7c 04 00 00       	call   40000600 <_write>
40000184:	83 f8 01             	cmp    $0x1,%eax
40000187:	74 51                	je     400001da <_fputc+0x8a>
fputc.c:16
40000189:	eb 4a                	jmp    400001d5 <_fputc+0x85>
4000018b:	90                   	nop    
4000018c:	8d 74 26 00          	lea    0x0(%esi,1),%esi
fputc.c:19
40000190:	83 7b 0c 00          	cmpl   $0x0,0xc(%ebx)
40000194:	75 1a                	jne    400001b0 <_fputc+0x60>
fputc.c:21
40000196:	83 c4 f4             	add    $0xfffffff4,%esp
40000199:	53                   	push   %ebx
4000019a:	e8 81 04 00 00       	call   40000620 <_fflush>
4000019f:	83 c4 10             	add    $0x10,%esp
400001a2:	85 c0                	test   %eax,%eax
400001a4:	74 0a                	je     400001b0 <_fputc+0x60>
fputc.c:22
400001a6:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
400001ab:	eb 2f                	jmp    400001dc <_fputc+0x8c>
400001ad:	8d 76 00             	lea    0x0(%esi),%esi
fputc.c:24
400001b0:	8b 43 04             	mov    0x4(%ebx),%eax
400001b3:	89 f2                	mov    %esi,%edx
400001b5:	88 10                	mov    %dl,(%eax)
400001b7:	ff 43 04             	incl   0x4(%ebx)
fputc.c:25
400001ba:	ff 4b 0c             	decl   0xc(%ebx)
fputc.c:26
400001bd:	f6 43 10 02          	testb  $0x2,0x10(%ebx)
400001c1:	74 17                	je     400001da <_fputc+0x8a>
400001c3:	83 fe 0a             	cmp    $0xa,%esi
400001c6:	75 12                	jne    400001da <_fputc+0x8a>
fputc.c:28
400001c8:	83 c4 f4             	add    $0xfffffff4,%esp
400001cb:	53                   	push   %ebx
400001cc:	e8 4f 04 00 00       	call   40000620 <_fflush>
400001d1:	85 c0                	test   %eax,%eax
400001d3:	74 05                	je     400001da <_fputc+0x8a>
fputc.c:29
400001d5:	bf ff ff ff ff       	mov    $0xffffffff,%edi
fputc.c:32
400001da:	89 f8                	mov    %edi,%eax
400001dc:	8d 65 e8             	lea    0xffffffe8(%ebp),%esp
400001df:	5b                   	pop    %ebx
400001e0:	5e                   	pop    %esi
400001e1:	5f                   	pop    %edi
400001e2:	89 ec                	mov    %ebp,%esp
400001e4:	5d                   	pop    %ebp
400001e5:	c3                   	ret    

400001e6 <.ef>:
fputc.c:33
400001e6:	8d 76 00             	lea    0x0(%esi),%esi
400001e9:	8d bc 27 00 00 00 00 	lea    0x0(%edi,1),%edi

⌨️ 快捷键说明

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