list.cod
来自「模拟电梯程序」· COD 代码 · 共 1,647 行 · 第 1/4 页
COD
1,647 行
$L52970:
; 96 : case 'y':
; 97 : direction=1;
0014e c7 45 fc 01 00
00 00 mov DWORD PTR _direction$[ebp], 1
; 98 : floor=3;
00155 c7 45 f8 03 00
00 00 mov DWORD PTR _floor$[ebp], 3
; 99 : break;
0015c e9 a1 00 00 00 jmp $L52953
$L52971:
; 100 : case 'u':
; 101 : direction=1;
00161 c7 45 fc 01 00
00 00 mov DWORD PTR _direction$[ebp], 1
; 102 : floor=2;
00168 c7 45 f8 02 00
00 00 mov DWORD PTR _floor$[ebp], 2
; 103 : break;
0016f e9 8e 00 00 00 jmp $L52953
$L52972:
; 104 : case 'i':
; 105 : direction=1;
00174 c7 45 fc 01 00
00 00 mov DWORD PTR _direction$[ebp], 1
; 106 : floor=1;
0017b c7 45 f8 01 00
00 00 mov DWORD PTR _floor$[ebp], 1
; 107 : break;
00182 eb 7e jmp SHORT $L52953
$L52973:
; 108 : /*外部呼叫 下行 */
; 109 : case 'a':
; 110 : direction=2;
00184 c7 45 fc 02 00
00 00 mov DWORD PTR _direction$[ebp], 2
; 111 : floor=9;
0018b c7 45 f8 09 00
00 00 mov DWORD PTR _floor$[ebp], 9
; 112 : break;
00192 eb 6e jmp SHORT $L52953
$L52974:
; 113 : case 's':
; 114 : direction=2;
00194 c7 45 fc 02 00
00 00 mov DWORD PTR _direction$[ebp], 2
; 115 : floor=8;
0019b c7 45 f8 08 00
00 00 mov DWORD PTR _floor$[ebp], 8
; 116 : break;
001a2 eb 5e jmp SHORT $L52953
$L52975:
; 117 : case 'd':
; 118 : direction=2;
001a4 c7 45 fc 02 00
00 00 mov DWORD PTR _direction$[ebp], 2
; 119 : floor=7;
001ab c7 45 f8 07 00
00 00 mov DWORD PTR _floor$[ebp], 7
; 120 : break;
001b2 eb 4e jmp SHORT $L52953
$L52976:
; 121 : case 'f':
; 122 : direction=2;
001b4 c7 45 fc 02 00
00 00 mov DWORD PTR _direction$[ebp], 2
; 123 : floor=6;
001bb c7 45 f8 06 00
00 00 mov DWORD PTR _floor$[ebp], 6
; 124 : break;
001c2 eb 3e jmp SHORT $L52953
$L52977:
; 125 : case 'g':
; 126 : direction=2;
001c4 c7 45 fc 02 00
00 00 mov DWORD PTR _direction$[ebp], 2
; 127 : floor=5;
001cb c7 45 f8 05 00
00 00 mov DWORD PTR _floor$[ebp], 5
; 128 : break;
001d2 eb 2e jmp SHORT $L52953
$L52978:
; 129 : case 'h':
; 130 : direction=2;
001d4 c7 45 fc 02 00
00 00 mov DWORD PTR _direction$[ebp], 2
; 131 : floor=4;
001db c7 45 f8 04 00
00 00 mov DWORD PTR _floor$[ebp], 4
; 132 : break;
001e2 eb 1e jmp SHORT $L52953
$L52979:
; 133 : case 'j':
; 134 : direction=2;
001e4 c7 45 fc 02 00
00 00 mov DWORD PTR _direction$[ebp], 2
; 135 : floor=3;
001eb c7 45 f8 03 00
00 00 mov DWORD PTR _floor$[ebp], 3
; 136 : break;
001f2 eb 0e jmp SHORT $L52953
$L52980:
; 137 : case 'k':
; 138 : direction=2;
001f4 c7 45 fc 02 00
00 00 mov DWORD PTR _direction$[ebp], 2
; 139 : floor=2;
001fb c7 45 f8 02 00
00 00 mov DWORD PTR _floor$[ebp], 2
$L52953:
; 142 : Storenode(direction,floor,&ControlCallPTR);/*把结点存储到链表中*/
00202 68 00 00 00 00 push OFFSET FLAT:_ControlCallPTR
00207 8b 4d f8 mov ecx, DWORD PTR _floor$[ebp]
0020a 51 push ecx
0020b 8b 55 fc mov edx, DWORD PTR _direction$[ebp]
0020e 52 push edx
0020f e8 00 00 00 00 call _Storenode
00214 83 c4 0c add esp, 12 ; 0000000cH
; 143 :
; 144 : }
00217 5f pop edi
00218 5e pop esi
00219 5b pop ebx
0021a 83 c4 4c add esp, 76 ; 0000004cH
0021d 3b ec cmp ebp, esp
0021f e8 00 00 00 00 call __chkesp
00224 8b e5 mov esp, ebp
00226 5d pop ebp
00227 c3 ret 0
$L53097:
00228 00 00 00 00 DD $L52956
0022c 00 00 00 00 DD $L52957
00230 00 00 00 00 DD $L52958
00234 00 00 00 00 DD $L52959
00238 00 00 00 00 DD $L52960
0023c 00 00 00 00 DD $L52961
00240 00 00 00 00 DD $L52962
00244 00 00 00 00 DD $L52963
00248 00 00 00 00 DD $L52964
0024c 00 00 00 00 DD $L52973
00250 00 00 00 00 DD $L52975
00254 00 00 00 00 DD $L52967
00258 00 00 00 00 DD $L52976
0025c 00 00 00 00 DD $L52977
00260 00 00 00 00 DD $L52978
00264 00 00 00 00 DD $L52972
00268 00 00 00 00 DD $L52979
0026c 00 00 00 00 DD $L52980
00270 00 00 00 00 DD $L52965
00274 00 00 00 00 DD $L52968
00278 00 00 00 00 DD $L52974
0027c 00 00 00 00 DD $L52969
00280 00 00 00 00 DD $L52971
00284 00 00 00 00 DD $L52966
00288 00 00 00 00 DD $L52970
0028c 00 00 00 00 DD $L52953
$L53096:
00290 00 DB 0
00291 01 DB 1
00292 02 DB 2
00293 03 DB 3
00294 04 DB 4
00295 05 DB 5
00296 06 DB 6
00297 07 DB 7
00298 08 DB 8
00299 19 DB 25 ; 00000019H
0029a 19 DB 25 ; 00000019H
0029b 19 DB 25 ; 00000019H
0029c 19 DB 25 ; 00000019H
0029d 19 DB 25 ; 00000019H
0029e 19 DB 25 ; 00000019H
0029f 19 DB 25 ; 00000019H
002a0 19 DB 25 ; 00000019H
002a1 19 DB 25 ; 00000019H
002a2 19 DB 25 ; 00000019H
002a3 19 DB 25 ; 00000019H
002a4 19 DB 25 ; 00000019H
002a5 19 DB 25 ; 00000019H
002a6 19 DB 25 ; 00000019H
002a7 19 DB 25 ; 00000019H
002a8 19 DB 25 ; 00000019H
002a9 19 DB 25 ; 00000019H
002aa 19 DB 25 ; 00000019H
002ab 19 DB 25 ; 00000019H
002ac 19 DB 25 ; 00000019H
002ad 19 DB 25 ; 00000019H
002ae 19 DB 25 ; 00000019H
002af 19 DB 25 ; 00000019H
002b0 19 DB 25 ; 00000019H
002b1 19 DB 25 ; 00000019H
002b2 19 DB 25 ; 00000019H
002b3 19 DB 25 ; 00000019H
002b4 19 DB 25 ; 00000019H
002b5 19 DB 25 ; 00000019H
002b6 19 DB 25 ; 00000019H
002b7 19 DB 25 ; 00000019H
002b8 19 DB 25 ; 00000019H
002b9 19 DB 25 ; 00000019H
002ba 19 DB 25 ; 00000019H
002bb 19 DB 25 ; 00000019H
002bc 19 DB 25 ; 00000019H
002bd 19 DB 25 ; 00000019H
002be 19 DB 25 ; 00000019H
002bf 19 DB 25 ; 00000019H
002c0 09 DB 9
002c1 19 DB 25 ; 00000019H
002c2 19 DB 25 ; 00000019H
002c3 0a DB 10 ; 0000000aH
002c4 0b DB 11 ; 0000000bH
002c5 0c DB 12 ; 0000000cH
002c6 0d DB 13 ; 0000000dH
002c7 0e DB 14 ; 0000000eH
002c8 0f DB 15 ; 0000000fH
002c9 10 DB 16 ; 00000010H
002ca 11 DB 17 ; 00000011H
002cb 19 DB 25 ; 00000019H
002cc 19 DB 25 ; 00000019H
002cd 19 DB 25 ; 00000019H
002ce 19 DB 25 ; 00000019H
002cf 19 DB 25 ; 00000019H
002d0 12 DB 18 ; 00000012H
002d1 13 DB 19 ; 00000013H
002d2 14 DB 20 ; 00000014H
002d3 15 DB 21 ; 00000015H
002d4 16 DB 22 ; 00000016H
002d5 19 DB 25 ; 00000019H
002d6 17 DB 23 ; 00000017H
002d7 19 DB 25 ; 00000019H
002d8 18 DB 24 ; 00000018H
_translatecalling ENDP
_TEXT ENDS
PUBLIC ??_C@_0BH@CIGK@?J?d?H?k?$LE?m?N?s?0?G?k?V?X?P?B?J?d?H?k?$KB?$KD?6?$AA@ ; `string'
EXTRN _malloc:NEAR
EXTRN _ControlCallFlash:NEAR
; COMDAT ??_C@_0BH@CIGK@?J?d?H?k?$LE?m?N?s?0?G?k?V?X?P?B?J?d?H?k?$KB?$KD?6?$AA@
; File c:\documents and settings\administrator\桌面\07412 4 lift\list.c
CONST SEGMENT
??_C@_0BH@CIGK@?J?d?H?k?$LE?m?N?s?0?G?k?V?X?P?B?J?d?H?k?$KB?$KD?6?$AA@ DB 0caH
DB 0e4H, 0c8H, 0ebH, 0b4H, 0edH, 0ceH, 0f3H, ',', 0c7H, 0ebH, 0d6H
DB 0d8H, 0d0H, 0c2H, 0caH, 0e4H, 0c8H, 0ebH, 0a1H, 0a3H, 0aH, 00H ; `string'
CONST ENDS
; COMDAT _Storenode
_TEXT SEGMENT
_direction$ = 8
_floor$ = 12
_startptr$ = 16
_newptr$ = -4
_curruntptr$ = -8
_Storenode PROC NEAR ; COMDAT
; 149 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 48 sub esp, 72 ; 00000048H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 8d 7d b8 lea edi, DWORD PTR [ebp-72]
0000c b9 12 00 00 00 mov ecx, 18 ; 00000012H
00011 b8 cc cc cc cc mov eax, -858993460 ; ccccccccH
00016 f3 ab rep stosd
; 150 : CALLPTR newptr, curruntptr;
; 151 : if(floor<=9&&floor>=1){
00018 83 7d 0c 09 cmp DWORD PTR _floor$[ebp], 9
0001c 7f 75 jg SHORT $L52990
0001e 83 7d 0c 01 cmp DWORD PTR _floor$[ebp], 1
00022 7c 6f jl SHORT $L52990
; 152 : newptr=(CALLPTR)malloc(sizeof(CALL));
00024 6a 0c push 12 ; 0000000cH
00026 e8 00 00 00 00 call _malloc
0002b 83 c4 04 add esp, 4
0002e 89 45 fc mov DWORD PTR _newptr$[ebp], eax
; 153 : newptr->CallDirection=direction;
00031 8b 45 fc mov eax, DWORD PTR _newptr$[ebp]
00034 8b 4d 08 mov ecx, DWORD PTR _direction$[ebp]
00037 89 08 mov DWORD PTR [eax], ecx
; 154 : newptr->CallFloor=floor;
00039 8b 55 fc mov edx, DWORD PTR _newptr$[ebp]
0003c 8b 45 0c mov eax, DWORD PTR _floor$[ebp]
0003f 89 42 04 mov DWORD PTR [edx+4], eax
; 155 : newptr->Nextptr=NULL;
00042 8b 4d fc mov ecx, DWORD PTR _newptr$[ebp]
00045 c7 41 08 00 00
00 00 mov DWORD PTR [ecx+8], 0
; 156 : ControlCallFlash(newptr, TRUE);
0004c 6a 01 push 1
0004e 8b 55 fc mov edx, DWORD PTR _newptr$[ebp]
00051 52 push edx
00052 e8 00 00 00 00 call _ControlCallFlash
00057 83 c4 08 add esp, 8
; 157 : if(*startptr==NULL)
0005a 8b 45 10 mov eax, DWORD PTR _startptr$[ebp]
0005d 83 38 00 cmp DWORD PTR [eax], 0
00060 75 0a jne SHORT $L52996
; 158 : *startptr=newptr;
00062 8b 4d 10 mov ecx, DWORD PTR _startptr$[ebp]
00065 8b 55 fc mov edx, DWORD PTR _newptr$[ebp]
00068 89 11 mov DWORD PTR [ecx], edx
; 159 : else{
0006a eb 25 jmp SHORT $L52997
$L52996:
; 160 : curruntptr=*startptr;
0006c 8b 45 10 mov eax, DWORD PTR _startptr$[ebp]
0006f 8b 08 mov ecx, DWORD PTR [eax]
00071 89 4d f8 mov DWORD PTR _curruntptr$[ebp], ecx
$L53000:
; 161 : while(curruntptr->Nextptr!=NULL)
00074 8b 55 f8 mov edx, DWORD PTR _curruntptr$[ebp]
00077 83 7a 08 00 cmp DWORD PTR [edx+8], 0
0007b 74 0b je SHORT $L53001
; 162 : curruntptr=curruntptr->Nextptr;
0007d 8b 45 f8 mov eax, DWORD PTR _curruntptr$[ebp]
00080 8b 48 08 mov ecx, DWORD PTR [eax+8]
00083 89 4d f8 mov DWORD PTR _curruntptr$[ebp], ecx
00086 eb ec jmp SHORT $L53000
$L53001:
; 163 : curruntptr->Nextptr=newptr;
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?