犀牛云做网站如何,网站备案需要什么东西,企业网站如何备案流程,高州手机网站建设公司本汇编代码对应以下两篇文章对应的用户程序汇编代码#xff1a;
【OS学习笔记】二十六 保护模式八#xff1a;任务门—任务切换【OS学习笔记】二十七 保护模式八#xff1a;任务切换的方法之----jmp与call的区别以及任务的中断嵌套
相应的内核程序代码为#xff1a;内核代…本汇编代码对应以下两篇文章对应的用户程序汇编代码
【OS学习笔记】二十六 保护模式八任务门—任务切换【OS学习笔记】二十七 保护模式八任务切换的方法之----jmp与call的区别以及任务的中断嵌套
相应的内核程序代码为内核代码
用户程序代码 ;代码清单15-2;文件名c15.asm;文件说明用户程序 ;
SECTION header vstart0program_length dd program_end ;程序总长度#0x00head_len dd header_end ;程序头部的长度#0x04stack_seg dd 0 ;用于接收堆栈段选择子#0x08stack_len dd 1 ;程序建议的堆栈大小#0x0c;以4KB为单位prgentry dd start ;程序入口#0x10 code_seg dd section.code.start ;代码段位置#0x14code_len dd code_end ;代码段长度#0x18data_seg dd section.data.start ;数据段位置#0x1cdata_len dd data_end ;数据段长度#0x20
;-------------------------------------------------------------------------------;符号地址检索表salt_items dd (header_end-salt)/256 ;#0x24salt: ;#0x28PrintString db PrintStringtimes 256-($-PrintString) db 0TerminateProgram db TerminateProgramtimes 256-($-TerminateProgram) db 0ReadDiskData db ReadDiskDatatimes 256-($-ReadDiskData) db 0header_end:;
SECTION data vstart0 message_1 db 0x0d,0x0adb [USER TASK]: Hi! nice to meet you,db I am run at CPL,0message_2 db 0db .Now,I must exit...,0x0d,0x0a,0data_end:;[bits 32]
;
SECTION code vstart0
start:;任务启动时DS指向头部段也不需要设置堆栈 mov eax,dsmov fs,eaxmov eax,[data_seg]mov ds,eaxmov ebx,message_1call far [fs:PrintString]mov ax,csand al,0000_0011Bor al,0x0030mov [message_2],almov ebx,message_2call far [fs:PrintString]call far [fs:TerminateProgram] ;退出并将控制权返回到核心 code_end:;-------------------------------------------------------------------------------
SECTION trail
;-------------------------------------------------------------------------------
program_end: