Assempler-PCcrashesafterexecutionofLGDTinstruction(汇编语言-执行LGDT指令后PC崩溃)
创始人
2024-09-20 15:01:06
0

这个问题可能是由于指向未初始化描述符表的地址引起的。在代码中,需要为描述符表分配空间并设置描述符表指针寄存器,然后才能执行LGDT指令。下面是一些示例代码:

section .data

    gdt_start:
        ; 描述符表开始位置
        dq 0
        gdt_code:
            ; 代码段描述符,大小为4GB,基地址为0,代码段访问权限为可读可执行
            dw 0xFFFF   ; Limit 0: 16 bit limit
            dw 0        ; Base 0: 16 bit base
            db 0        ; Base 1: 8 bit base
            db 10011010b; Type: code, non-conforming, readable, accessed
            db 11001111b; Limit 1: 4 bit limit, 4 bit OF, 8 bit avl, granularity
            db 0        ; Base 2: 8 bit base
        gdt_data:
            ; 数据段描述符,大小为4GB,基地址为0,数据段访问权限为可读可写
            dw 0xFFFF   ; Limit 0: 16 bit limit
            dw 0        ; Base 0: 16 bit base
            db 0        ; Base 1: 8 bit base
            db 10010010b; Type: data, writable, accessed
            db 11001111b; Limit 1: 4 bit limit, 4 bit OF, 8 bit avl, granularity
            db 0        ; Base 2: 8 bit base
    gdt_end:

section .text

    ; 设置描述符表指针寄存器
    lgdt [gdt_start]

    ; 之后可以正常的访问数据段和代码段了

以上代码给出了一个包含两个描述符(代码段和数据段)的简单描述符表,并设置了描述符表指针寄存器。在真实的操作系统中,描述符表可能包含更多条目。

相关内容

热门资讯

第二分钟经验!wepoker私... 第二分钟经验!wepoker私局辅助(透视)原来真的是有辅助插件(哔哩哔哩)运wepoker私局辅助...
第四分钟绝活儿!aapoker... 第四分钟绝活儿!aapoker怎么设置提高好牌几率(透视)好像真的有辅助透视(哔哩哔哩)亲,关键说明...
5分钟技法!wepoker轻量... 5分钟技法!wepoker轻量版透视系统(透视)一直真的是有辅助辅助(哔哩哔哩)1、进入游戏-大厅左...
第8分钟攻略!约局吧游戏挂(透... 第8分钟攻略!约局吧游戏挂(透视)切实存在有辅助教程(哔哩哔哩)1、玩家可以在约局吧游戏挂透视最简单...
三分钟指引!wepoker辅助... 三分钟指引!wepoker辅助分析器(透视)真是是真的有辅助工具(哔哩哔哩)1、玩家可以在wepok...
两分钟大纲!德州透视插件(透视... 两分钟大纲!德州透视插件(透视)果然真的是有辅助神器(哔哩哔哩)1、两分钟大纲!德州透视插件(透视)...
7分钟窍门!pokemmo手机... 7分钟窍门!pokemmo手机辅助软件(透视)确实真的有辅助开挂(哔哩哔哩)1、下载好pokemmo...
2分钟技法!wepoker有没... 2分钟技法!wepoker有没有挂(透视)本来真的是有辅助辅助(哔哩哔哩)1)wepoker有没有挂...
4分钟举措!wepoker辅助... 4分钟举措!wepoker辅助透视(透视)总是存在有辅助工具(哔哩哔哩)wepoker辅助透视辅助器...
第3分钟绝活儿!wepoker... 第3分钟绝活儿!wepoker安装教程(透视)好像是真的有辅助安装(哔哩哔哩)1、很好的工具软件,可...