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

📄 lib386.t

📁 操作系统设计与实现源码
💻 T
📖 第 1 页 / 共 5 页
字号:
.fp 5 CW LucidaT   .\" To use a font other than Lucida, change 'LucidaT'.po .9i.lg 0.nf.ec `.ps 7.vs 9.lt 5.25i`f5.nr Tb `w'0'.nr Fp 0.ta 9u*`n(Tbu 17u*`n(Tbu 25u*`n(Tbu 33u*`n(Tbu 41u*`n(Tbu 49u*`n(Tbu 57u*`n(Tbu 65u*`n(Tbu 73u*`n(Tbu 81u*`n(Tbu.de Op .if ``n(Fp>0 .bp.nr Fp 1.sp 0.75i.tl '``fR``s10MINIX SOURCE CODE``s0'``s11File: ``$2``s0``fP'``fB``s12``n%``s0``fP'.sp 0.25i...de Ep .if ``n(Fp>0 .bp.sp 0.75i.tl '``fB``s12``n%``s0``fP``fR'``s11File: ``$2'``s0``s10MINIX SOURCE CODE``s0``fP'.nr Fp 1.sp 0.25i...Op 1 src/lib/i386/em/byte_order.h++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++			src/lib/i386/em/byte_order.h	 	 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++00000	#define CHAR_UNSIGNED   000001	#define MSB_AT_LOW_ADDRESS      000002	#define MSW_AT_LOW_ADDRESS      000003	#define FL_MSB_AT_LOW_ADDRESS   000004	#define FL_MSW_AT_LOW_ADDRESS   000005	#define FL_MSL_AT_LOW_ADDRESS   0++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++			src/lib/i386/em/em_adf4.s	 	 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++00100	.sect .text; .sect .rom; .sect .data; .sect .bss00101	.define .adf400102	00103	        .sect .text00104	.adf4:00105	        mov     bx,sp00106	        flds    4(bx)00107	        fadds   8(bx)00108	        fstps   8(bx)00109	        wait00110	        ret++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++			src/lib/i386/em/em_adf8.s	 	 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++00200	.sect .text; .sect .rom; .sect .data; .sect .bss00201	.define .adf800202	00203	        .sect .text00204	.adf8:00205	        mov     bx,sp00206	        fldd    4(bx)00207	        faddd   12(bx)00208	        fstpd   12(bx)00209	        wait00210	        ret.Ep 2 src/lib/i386/em/em_adi.s++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++			src/lib/i386/em/em_adi.s	 	 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++00300	.sect .text; .sect .rom; .sect .data; .sect .bss00301	.define .adi00302	00303	        ! #bytes in ecx , top of stack in eax00304	        .sect .text00305	.adi:00306	        pop     ebx              ! return address00307	        cmp     ecx,400308	        jne     9f00309	        pop     ecx00310	        add     eax,ecx00311	        jmp     ebx00312	9:00313	.extern EODDZ00314	.extern .trp00315	        mov     eax,EODDZ00316	        push    ebx00317	        jmp     .trp++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++			src/lib/i386/em/em_and.s	 	 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++00400	.sect .text; .sect .rom; .sect .data; .sect .bss00401	.define .and00402	00403	        ! #bytes in ecx00404	        ! save edi; it might be a register variable00405	00406	        .sect .text00407	.and:00408	        pop     ebx             ! return address00409	        mov     edx,edi00410	        mov     edi,esp00411	        add     edi,ecx00412	        sar     ecx,200413	1:00414	        pop     eax00415	        and     eax,(edi)00416	        stos00417	        loop    1b00418	        mov     edi,edx00419	        jmp     ebx.Op 3 src/lib/i386/em/em_blm.s++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++			src/lib/i386/em/em_blm.s	 	 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++00500	.sect .text; .sect .rom; .sect .data; .sect .bss00501	.sect .text00502	.define .blm00503	00504	        ! ecx: count in words00505	.blm:00506	        mov     ebx,esp00507	        mov     eax,esi00508	        mov     edx,edi00509	        mov     edi,4(ebx)00510	        mov     esi,8(ebx)00511	        rep     movs00512	        mov     esi,eax00513	        mov     edi,edx00514	        ret     800515	++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++			src/lib/i386/em/em_cff4.s	 	 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++00600	.sect .text; .sect .rom; .sect .data; .sect .bss00601	.define .cff400602	00603	        .sect .text00604	.cff4:00605	        mov     bx,sp00606	        fldd    4(bx)00607	        fstcw   4(bx)00608	        wait00609	        mov     dx,4(bx)00610	        and     4(bx),0xf3ff    ! set to rounding mode00611	        wait00612	        fldcw   4(bx)00613	        fstps   8(bx)00614	        mov     4(bx),dx00615	        wait00616	        fldcw   4(bx)00617	        wait00618	        ret.Ep 4 src/lib/i386/em/em_cff8.s++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++			src/lib/i386/em/em_cff8.s	 	 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++00700	.sect .text; .sect .rom; .sect .data; .sect .bss00701	.define .cff800702	00703	        .sect .text00704	.cff8:00705	        mov     bx,sp00706	        flds    4(bx)00707	        fstpd   4(bx)00708	        wait00709	        ret++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++			src/lib/i386/em/em_cfi.s	 	 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++00800	.sect .text; .sect .rom; .sect .data; .sect .bss00801	.define .cfi00802	00803	        .sect .text00804	.cfi:00805	        mov     bx,sp00806	        fstcw   4(bx)00807	        wait00808	        mov     dx,4(bx)00809	        or      4(bx),0xc00     ! truncating mode00810	        wait00811	        fldcw   4(bx)00812	        cmp     8(bx),400813	        jne     2f00814	                                ! loc 4 loc ? cfi00815	        flds    12(bx)00816	        fistpl  12(bx)00817	1:00818	        mov     4(bx),dx00819	        wait00820	        fldcw   4(bx)00821	        ret00822	2:00823	                                ! loc 8 loc ? cfi00824	        fldd    12(bx)00825	        fistpl  16(bx)00826	        jmp     1b.Op 5 src/lib/i386/em/em_cfu.s++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++			src/lib/i386/em/em_cfu.s	 	 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++00900	.sect .text; .sect .rom; .sect .data; .sect .bss00901	.define .cfu00902	00903	        .sect .text00904	.cfu:00905	        mov     bx,sp00906	        fstcw   4(bx)00907	        wait00908	        mov     dx,4(bx)00909	        or      4(bx),0xc00     ! truncating mode00910	        wait00911	        fldcw   4(bx)00912	        cmp     8(bx),400913	        jne     2f00914	                                ! loc 4 loc ? cfu00915	        flds    12(bx)00916	        fabs                    ! ???00917	        fiaddl  (bigmin)00918	        fistpl  12(bx)00919	        wait00920	        mov     ax,12(bx)00921	        sub     ax,(bigmin)00922	        mov     12(bx),ax00923	1:00924	        mov     4(bx),dx00925	        wait00926	        fldcw   4(bx)00927	        ret00928	2:00929	                                ! loc 8 loc ? cfu00930	        fldd    12(bx)00931	        fabs                    ! ???00932	        fiaddl  (bigmin)00933	        fistpl  16(bx)00934	        mov     ax,16(bx)00935	        sub     ax,(bigmin)00936	        mov     16(bx),ax00937	        jmp     1b++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++			src/lib/i386/em/em_cif4.s	 	 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++01000	.sect .text; .sect .rom; .sect .data; .sect .bss01001	.define .cif401002	01003	        .sect .text01004	.cif4:01005	        mov     bx,sp01006	        fildl   8(bx)01007	        fstps   8(bx)01008	        wait01009	        ret.Ep 6 src/lib/i386/em/em_cif8.s++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++			src/lib/i386/em/em_cif8.s	 	 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++01100	.sect .text; .sect .rom; .sect .data; .sect .bss01101	.define .cif801102	01103	        .sect .text01104	.cif8:01105	        mov     bx,sp01106	        fildl   8(bx)01107	        fstpd   4(bx)01108	        wait01109	        ret++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++			src/lib/i386/em/em_cii.s	 	 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++01200	.sect .text; .sect .rom; .sect .data; .sect .bss01201	.define .cii01202	01203	.sect .text01204	.cii:01205	        pop     ebx              ! return address01206	                                ! pop     ecx, dest. size01207	                                ! pop     edx, src. size01208	                                ! eax is source01209	        cmp     edx,101210	        jne     2f01211	        movsxb  eax,al01212	        mov     edx,401213	        jmp     1f01214	2:01215	        cmp     edx,201216	        jne     1f01217	        cwde                    ! convert from 2 to 4 bytes01218	        mov     edx,401219	1:01220	        cmp     edx,ecx01221	        jne     9f01222	        cmp     edx,401223	        jne     9f01224	        jmp     ebx01225	9:01226	.extern EILLINS01227	.extern .fat01228	        mov     eax,EILLINS01229	        push    eax01230	        jmp     .fat.Op 7 src/lib/i386/em/em_cmf4.s++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++			src/lib/i386/em/em_cmf4.s	 	 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++01300	.sect .text; .sect .rom; .sect .data; .sect .bss01301	.define .cmf401302	01303	        .sect .text01304	.cmf4:01305	        mov     bx,sp01306	        xor     cx,cx01307	        flds    8(bx)01308	        flds    4(bx)01309	        fcompp                  ! compare and pop operands01310	        fstsw   ax01311	        wait01312	        sahf01313	        je      1f01314	        jb      2f01315	        dec     cx01316	        jmp     1f01317	2:01318	        inc     cx01319	1:01320	        mov     ax,cx01321	        ret++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++			src/lib/i386/em/em_cmf8.s	 	 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++01400	.sect .text; .sect .rom; .sect .data; .sect .bss01401	.define .cmf801402	01403	        .sect .text01404	.cmf8:01405	        mov     bx,sp01406	        xor     cx,cx01407	        fldd    12(bx)01408	        fldd    4(bx)01409	        fcompp                  ! compare and pop operands01410	        fstsw   ax01411	        wait01412	        sahf01413	        je      1f01414	        jb      2f01415	        dec     cx01416	        jmp     1f01417	2:01418	        inc     cx01419	1:01420	        mov     ax,cx01421	        ret.Ep 8 src/lib/i386/em/em_cms.s++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++			src/lib/i386/em/em_cms.s	 	 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++01500	.sect .text; .sect .rom; .sect .data; .sect .bss01501	.define .cms01502	01503	        ! #bytes in ecx01504	        .sect .text01505	.cms:01506	        pop     ebx              ! return address01507	        mov     edx,esp01508	        push    esi01509	        push    edi01510	        mov     esi,edx01511	        add     edx,ecx01512	        mov     edi,edx01513	        add     edx,ecx01514	        sar     ecx,201515	        repe cmps01516	        je      1f01517	        inc     ecx01518	1:01519	        pop     edi01520	        pop     esi01521	        mov     esp,edx01522	        jmp     ebx++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++			src/lib/i386/em/em_com.s	 	 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++01600	.sect .text; .sect .rom; .sect .data; .sect .bss01601	.define .com01602	01603	        ! #bytes in ecx01604	        .sect .text01605	.com:01606	        mov     ebx,esp01607	        add     ebx,401608	        sar     ecx,201609	1:01610	        not     (ebx)01611	        add     ebx,401612	        loop    1b01613	        ret.Op 9 src/lib/i386/em/em_csa4.s

⌨️ 快捷键说明

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