2088527161 发表于 2023-11-17 22:51

李述桐-X86汇编语言


-x86汇编语言:从实模式到保护模式
├──{01}--课程说明
|   └──--课程说明_ev.mp451.62M
├──{02}--汇编语言的前世今生
|   ├──--处理器_ev.mp419.65M
|   ├──--汇编语言的诞生_ev.mp420.71M
|   ├──--引子_ev.mp47.19M
|   ├──--用电来表示数字_ev.mp410.88M
|   ├──--二进制加法机_ev.mp48.86M
|   ├──--具有记忆功能的器件——寄存器_ev.mp413.06M
|   ├──--带寄存器的加法机_ev.mp48.44M
|   ├──--能做四则运算的机器_ev.mp413.09M
|   ├──--机器指令_ev.mp443.36M
|   ├──--内存_ev.mp440.06M
|   └──--自动计算_ev.mp430.04M
├──{03}--认识8086处理器
|   ├──--8086的通用寄存器_ev.mp423.15M
|   ├──--8086的内存访问和字节序_ev.mp412.85M
|   ├──--程序的分段_ev.mp411.24M
|   ├──--程序的重定位难题_ev.mp414.17M
|   ├──--段地址和偏移地址_ev.mp413.09M
|   ├──--8086内存访问的困境_ev.mp48.19M
|   ├──--8086选择段地址的策略_ev.mp421.66M
|   ├──--8086的内存访问过程_ev.mp413.82M
|   └──--逻辑地址和分段的灵活性_ev.mp425.43M
├──{04}--原书第1版第2章检测点和习题解析
|   └──--原书第1版第2章检测点和习题解析_ev.mp422.29M
├──{05}--汇编语言和汇编软件
|   ├──--创建汇编语言源程序_ev.mp423.11M
|   ├──--Notepad++的下载和使用_ev.mp423.37M
|   ├──--下载和安装编译器NASM_ev.mp417.45M
|   ├──--编译汇编语言源程序_ev.mp432.23M
|   ├──--下载和使用配套源码及工具_ev.mp450.67M
|   └──--将编译功能集成到Notepad++_ev.mp418.63M
├──{06}--原书第1版第3章检测点和习题解析
|   └──--原书第1版第3章检测点和习题解析_ev.mp413.70M
├──{07}--如何执行编译好的程序
|   ├──--8086加电或者复位时的状态_ev.mp424.52M
|   ├──--8086地址空间的分配_ev.mp432.36M
|   ├──--跳转指令_ev.mp416.69M
|   ├──--硬盘的构造和工作原理_ev.mp423.18M
|   └──--一切从主引导扇区开始_ev.mp422.70M
├──{08}--虚拟机的安装和使用
|   ├──--安装VirtualBox虚拟机管理器_ev.mp431.70M
|   ├──--创建VirtualBox虚拟机_ev.mp496.91M
|   ├──--虚拟硬盘简介_ev.mp444.27M
|   ├──--在Windows下创建虚拟硬盘并安装操作系统_ev.mp478.68M
|   └──--在Linux下创建虚拟硬盘并安装操作系统_ev.mp421.98M
├──{09}--汇编语言程序的调试
|   ├──--带调试功能的虚拟机_ev.mp411.29M
|   ├──--安装Bochs虚拟机_ev.mp435.99M
|   ├──--为Bochs虚拟机安装虚拟硬盘_ev.mp422.23M
|   ├──--创建主引导扇区程序_ev.mp433.29M
|   ├──--将程序写入硬盘主引导扇区_ev.mp468.72M
|   └──--用调试器观察程序的执行_ev.mp4132.84M
├──{10}--原书第1版第4章检测点和习题解析
|   └──--原书第1版第4章检测点和习题解析_ev.mp47.86M
├──{11}--在屏幕上显示文本
|   ├──--在VirtualBox中运行写屏程序_ev.mp428.35M
|   ├──--主引导扇区执行时的内存布局_ev.mp443.54M
|   ├──--使用标号计算跳转的偏移地址_ev.mp431.37M
|   ├──--使用寄存器的绝对间接近跳转_ev.mp432.43M
|   ├──--使用相对偏移量的短跳转和近跳转_ev.mp449.92M
|   ├──--显卡和显存_ev.mp437.67M
|   ├──--准备访问文本模式下的显存_ev.mp422.99M
|   ├──--字符的编码和显示属性_ev.mp437.42M
|   ├──--文本模式下的显存操作_ev.mp425.97M
|   ├──--MOV指令的形式和机器码_ev.mp464.09M
|   ├──--列表文件的创建和使用_ev.mp442.44M
|   ├──--在汇编程序中使用标号_ev.mp426.68M
|   ├──--段间直接绝对跳转指令_ev.mp421.28M
|   └──--在Bochs中运行和调试写屏程序_ev.mp4130.04M
├──{12}--在屏幕上显示数字
|   ├──--显示数字的基本原理_ev.mp423.05M
|   ├──--无符号数除法指令div_ev.mp447.80M
|   ├──--在调试器里验证除法操作_ev.mp420.87M
|   ├──--异或指令xor的用法_ev.mp460.69M
|   ├──--加法指令add的用法_ev.mp430.20M
|   ├──--使用标号访问内存数据_ev.mp423.46M
|   ├──--段超越前缀的使用_ev.mp441.56M
|   └──--显示标号的汇编地址_ev.mp442.12M
├──{13}--阶段性重点内容总结
|   ├──--阶段性重点内容总结_ev.mp440.49M
|   └──--原书第1版第5章检测点和习题解析_ev.mp449.95M
├──{14}--循环、批量传送和条件转移
|   ├──--跳过非指令的数据区_ev.mp414.68M
|   ├──--逻辑段地址的重新设定_ev.mp411.44M
|   ├──--串传送指令和标志寄存器_ev.mp426.08M
|   ├──--NASM的$和$$记号_ev.mp438.28M
|   ├──--使用循环指令LOOP分解数位_ev.mp418.10M
|   ├──--基址寻址和INC指令_ev.mp433.57M
|   ├──--数字的显示和DEC指令_ev.mp429.03M
|   └──--基址变址寻址和条件转移指令_ev.mp452.21M
├──{15}--计算机中的负数
|   ├──--无符号数和有符号数_ev.mp443.77M
|   ├──--减法指令SUB和求补指令NEG_ev.mp462.16M
|   ├──--计算机如何区分对待无符号数和有符号数_ev.mp439.23M
|   ├──--有符号数除法指令IDIV_ev.mp457.27M
|   └──--有符号数的符号扩展指令_ev.mp466.40M
├──{16}--阶段性知识总结和拓展
|   ├──--8086的标志寄存器_ev.mp441.81M
|   ├──--条件转移指令和CMP指令_ev.mp453.99M
|   └──--原书第1版第6章检测点和习题解析_ev.mp452.59M
├──{17}--从1加到100并显示结果
|   ├──--字符串的定义和累加过程_ev.mp429.77M
|   ├──--栈的原理和使用_ev.mp490.68M
|   ├──--栈在数位分解和显示中的应用_ev.mp423.34M
|   ├──--在调试器里观察栈操作的状态_ev.mp444.13M
|   ├──--进一步认识栈和栈操作的特点_ev.mp430.35M
|   └──--逻辑或指令OR和逻辑与指令AND_ev.mp471.25M
├──{18}--INTEL8086处理器的寻址方式
|   ├──--寄存器、立即数和直接寻址_ev.mp435.08M
|   ├──--基址寻址_ev.mp461.43M
|   ├──--变址寻址_ev.mp443.94M
|   ├──--基址变址寻址_ev.mp439.89M
|   └──--原书第1版第7章检测点和习题解析_ev.mp414.37M
├──{19}--硬盘和显卡的访问与控制
|   ├──--过程和过程调用_ev.mp442.31M
|   ├──--过程调用和返回的原理_ev.mp426.04M
|   ├──--加载整个用户程序_ev.mp425.53M
|   ├──--用户程序的重定位_ev.mp423.44M
|   ├──--比特位的移动指令_ev.mp467.20M
|   ├──--转到用户程序内部执行_ev.mp413.82M
|   ├──--8086的无条件转移指令_ev.mp467.38M
|   ├──--用户程序的执行过程_ev.mp440.98M
|   ├──--验证加载器加载和执行用户程序的过程_ev.mp448.20M
|   ├──--书中第八章用户程序概述_ev.mp423.16M
|   ├──--离开主引导扇区_ev.mp416.55M
|   ├──--与文本显示有关的回车、换行与光标控制_ev.mp445.52M
|   ├──--回车的光标处理和乘法指令MUL_ev.mp482.50M
|   ├──--换行和普通字符的处理过程与滚屏操作_ev.mp447.48M
|   ├──--8086的过程调用方式_ev.mp448.45M
|   ├──--通过RETF指令转到另一个代码段内执行_ev.mp431.66M
|   ├──--在程序中访问不同的数据段_ev.mp419.51M
|   ├──--使用新版FixVhdWr写虚拟硬盘并运行程序_ev.mp461.09M
|   ├──--原书第一版第8章习题解析解答_ev.mp427.65M
|   ├──--给汇编语言程序分段_ev.mp430.32M
|   ├──--控制段内元素的汇编地址_ev.mp424.19M
|   ├──--加载器和用户程序头部段_ev.mp436.90M
|   ├──--加载器的工作流程和常数声明_ev.mp421.87M
|   ├──--确定用户程序的加载位置_ev.mp438.09M
|   ├──--外围设备及其接口_ev.mp420.49M
|   ├──--输入输出端口的访问_ev.mp433.64M
|   └──--通过硬盘控制器端口读扇区数据_ev.mp451.80M
├──{20}--中断和动态时钟显示
|   ├──--用NOT指令反转时间分隔符的颜色_ev.mp418.33M
|   ├──--使用IRET指令从中断过程返回_ev.mp410.94M
|   ├──--用停机指令HLT使处理器进入低功耗状态_ev.mp446.79M
|   ├──--内部中断和软中断_ev.mp431.83M
|   ├──--BIOS中断概述_ev.mp462.75M
|   ├──--使用BIOS功能调用接收并显示键盘输入_ev.mp440.31M
|   ├──--原书第9章检测点和习题解析_ev.mp413.46M
|   ├──--中断和硬件中断_ev.mp415.32M
|   ├──--中断控制器简介_ev.mp417.53M
|   ├──--中断号、中断处理过程和中断向量表_ev.mp444.68M
|   ├──--实时时钟、CMOSRAM和BCD编码_ev.mp433.50M
|   ├──--实时时钟芯片的中断信号_ev.mp449.02M
|   ├──--安装0x70号中断处理过程_ev.mp441.34M
|   ├──--启用更新周期结束中断_ev.mp433.22M
|   ├──--用TEST指令等待更新周期结束_ev.mp435.73M
|   └──--读取BCD码的时间并在屏幕上显示_ev.mp437.20M
├──{21}--32位x86处理器编程架构
|   ├──--IA-32架构和保护模式_ev.mp441.24M
|   ├──--寄存器的扩展和扩充_ev.mp424.35M
|   ├──--32位处理器的内存访问概况_ev.mp427.96M
|   ├──--32位处理器的寻址方式概况_ev.mp444.36M
|   ├──--选修-流水线技术_ev.mp414.74M
|   ├──--选修-高速缓存技术_ev.mp411.19M
|   ├──--选修-乱序执行技术_ev.mp428.93M
|   ├──--选修-寄存器重命名技术_ev.mp430.59M
|   └──--选修-分支目标预测技术_ev.mp424.48M
├──{22}--进入保护模式
|   ├──--通过设置寄存器CR0的PE位进入保护模式_ev.mp431.83M
|   ├──--描述符高速缓存器和保护模式下的内存访问_ev.mp426.03M
|   ├──--在调试器中观察实模式和保护模式的内存访问_ev.mp469.90M
|   ├──--保护模式是要保护什么_ev.mp423.57M
|   ├──--全局描述符表GDT和全局描述符表寄存器GDTR_ev.mp415.34M
|   ├──--准备创建全局描述符表_ev.mp417.44M
|   ├──--描述符的分类_ev.mp414.86M
|   ├──--存储器的段描述符-段的类型和基地址_ev.mp416.01M
|   ├──--存储器的段描述符-段界限及访问控制位_ev.mp422.16M
|   ├──--安装存储器的段描述符_ev.mp418.14M
|   ├──--加载全局描述符表寄存器GDTR_ev.mp416.30M
|   └──--开启处理器的第21根地址线A20_ev.mp431.10M
├──{23}--指令的格式及其操作尺寸
|   ├──--描述符和段描述符高速缓存器的D位_ev.mp432.81M
|   ├──--进入保护模式后立即切换到32位模块并使用32位默认操作尺寸_ev.mp449.68M
|   ├──--80286的16位保护模式_ev.mp420.84M
|   ├──--16位处理器的指令操作尺寸_ev.mp413.76M
|   ├──--32位处理器的指令操作尺寸_ev.mp446.61M
|   ├──--x86的指令格式-操作码和立即数部分_ev.mp455.22M
|   ├──--x86的指令格式-ModRM和偏移量部分_ev.mp491.61M
|   ├──--x86的指令格式-SIB部分_ev.mp447.93M
|   ├──--x86的指令格式-指令前缀部分_ev.mp47.14M
|   ├──--处理器的默认操作尺寸和相关指令前缀_ev.mp438.82M
|   └──--用伪指令bits生成16位和32位模块_ev.mp418.26M
├──{24}--存储器的保护
|   ├──--通过别名来实现段的共用和共享_ev.mp434.56M
|   ├──--冒泡排序法的基本原理_ev.mp415.51M
|   ├──--32位操作尺寸下的LOOP指令_ev.mp415.98M
|   ├──--数据交换指令XCHG_ev.mp441.84M
|   ├──--话说MOVDS,AX和MOVDS,EAX_ev.mp446.38M
|   ├──--修改段寄存器时的保护_ev.mp418.12M
|   ├──--代码段执行时的保护_ev.mp416.23M
|   ├──--用向上扩展的段做为栈段_ev.mp423.08M
|   ├──--向上扩展的段用做栈段时的保护_ev.mp413.23M
|   ├──--访问普通数据段时的保护_ev.mp414.69M
|   ├──--内存线性地址的回绕特性_ev.mp420.26M
|   ├──--用向下扩展的段做为栈段_ev.mp421.71M
|   └──--向下扩展的段用做栈段时的保护_ev.mp423.70M
├──{25}--保护模式程序的动态加载和执行
|   ├──--条件传送指令簇CMOVcc_ev.mp443.90M
|   ├──--计算以512字节为单位的用户程序总长度_ev.mp413.88M
|   ├──--内存分配的基本策略和方法_ev.mp425.86M
|   ├──--内存分配的简易实现过程_ev.mp419.69M
|   ├──--加载用户程序_ev.mp420.55M
|   ├──--准备安装用户程序的段描述符_ev.mp417.96M
|   ├──--用SGDT和MOVZX指令确定GDT的位置_ev.mp458.06M
|   ├──--安装新描述符并生成选择子_ev.mp413.82M
|   ├──--安装用户程序的段描述符并回填选择子_ev.mp420.55M
|   ├──--用户程序的执行和退出_ev.mp441.10M
|   ├──--本章的目标和内容提要_ev.mp415.64M
|   ├──--在虚拟机上观察内核的加载以及用户程序的执行与退出_ev.mp422.42M
|   ├──--内核的结构和加载前的准备工作_ev.mp463.18M
|   ├──--准备为内核的每个段创建和安装描述符_ev.mp432.07M
|   ├──--段描述符的创建和BSWAP指令_ev.mp434.51M
|   ├──--进入内核执行_ev.mp429.99M
|   ├──--进入内核后显示文本信息_ev.mp428.54M
|   ├──--用CPUID指令取得处理器品牌信息并显示_ev.mp445.79M
|   ├──--准备加载用户程序_ev.mp433.71M
|   └──--预读用户程序并得到它的大小_ev.mp416.49M
├──{26}--用户程序编程接口及其实现
|   ├──--在虚拟机上验证程序的执行_ev.mp415.63M
|   ├──--以十六进制形式显示一个双字以及PUSHAD、POPAD和XLAT_ev.mp450.16M
|   ├──--内核与用户程序之间的栈切换问题_ev.mp427.99M
|   ├──--在内核中为用户程序提供编程支持_ev.mp423.61M
|   ├──--用户程序中的符号地址检索表_ev.mp432.32M
|   ├──--内核程序中的符号地址检索表_ev.mp429.46M
|   ├──--串比较指令CMPS_ev.mp427.03M
|   ├──--串比较的方向和重复前缀_ev.mp469.16M
|   ├──--使用外循环依次取得用户SALT表的每个条目_ev.mp415.13M
|   ├──--使用内循环依次取得内核SALT表的每个条目并进行比较_ev.mp420.49M
|   └──--在用户程序内使用内核编程接口读硬盘和显示文本_ev.mp426.83M
├──{27}--任务和任务的创建
|   ├──--TSS描述符的格式和TSS描述符的创建_ev.mp412.95M
|   ├──--用带参数的RET指令返回调用者_ev.mp426.99M
|   ├──--加载任务寄存器TR和局部描述符表寄存器LDTR_ev.mp438.08M
|   ├──--在虚拟机上验证任务的执行_ev.mp448.88M
|   ├──--任务:概念和组成_ev.mp410.23M
|   ├──--使用任务控制块保存任务基本信息_ev.mp436.04M
|   ├──--将任务控制块加入任务控制块链表_ev.mp416.06M
|   ├──--通过栈传递例程参数以及立即数的压栈指令_ev.mp420.24M
|   ├──--段寄存器的压栈和出栈以及栈的随机访问机制_ev.mp417.83M
|   ├──--创建任务的局部描述符表LDT_ev.mp422.51M
|   ├──--在当前任务的LDT中安装描述符_ev.mp431.00M
|   ├──--LDT描述符的格式和LDT描述符的创建_ev.mp430.74M
|   └──--创建任务状态段TSS_ev.mp416.02M
├──{28}--特权级和特权级保护
|   ├──--一般情况下的请求特权级设置_ev.mp418.59M
|   ├──--为内核接口例程创建调用门_ev.mp458.30M
|   ├──--调用门的测试和调用门转移过程_ev.mp433.76M
|   ├──--通过调用门实施低特权级到高特权级的转移_ev.mp437.51M
|   ├──--通过调用门转移控制时的栈切换过程_ev.mp416.69M
|   ├──--通过调用门转移控制并返回的完整描述_ev.mp426.95M
|   ├──--创建0、1和2特权级的栈并登记在TSS中_ev.mp432.65M
|   ├──--通过模拟调用门返回进入用户程序执行_ev.mp435.57M
|   ├──--特权级保护的必要性和特权保护机制_ev.mp426.83M
|   ├──--当前特权级CPL_ev.mp410.10M
|   ├──--描述符特权级DPL_ev.mp428.89M
|   ├──--任务公共部分和私有部分的特权级划分_ev.mp450.25M
|   ├──--依从的代码段_ev.mp48.74M
|   ├──--门描述符和调用门_ev.mp423.53M
|   ├──--本章程序说明及特权级检查的时机_ev.mp417.24M
|   ├──--请求特权级RPL_ev.mp425.02M
|   └──--请求特权级调整指令ARPL_ev.mp419.96M
├──{29}--协同式任务切换
|   ├──--通过JMPFAR执行任务切换的过程_ev.mp427.62M
|   ├──--内核任务与用户任务轮流执行的过程_ev.mp447.30M
|   ├──--任务的终止和清理_ev.mp436.34M
|   ├──--多任务和任务切换概述_ev.mp425.85M
|   ├──--内核任务的创建和I/O特权级IOPL_ev.mp428.80M
|   ├──--I/O特权级的修改和POPF指令_ev.mp414.64M
|   ├──--任务的用户态和内核态_ev.mp417.10M
|   ├──--I/O许可位串和TSS的I/O许可位映射区_ev.mp424.51M
|   ├──--任务切换的方法及内核任务的确立_ev.mp433.28M
|   ├──--用户任务的创建和初始化_ev.mp458.42M
|   ├──--简单的任务调度和切换策略_ev.mp420.35M
|   └──--遍历TCB链表寻找忙任务和就绪任务_ev.mp425.50M
├──{30}--中断和异常的处理与抢占式多任务
|   ├──--中断和异常发生时的栈切换过程_ev.mp430.89M
|   ├──--在中断处理过程中实施任务切换(含NOP指令的介绍)_ev.mp462.43M
|   ├──--抢占式多任务的执行效果演示_ev.mp435.49M
|   ├──--中断和异常概述_ev.mp421.50M
|   ├──--保护模式下中断和异常的向量分配_ev.mp423.71M
|   ├──--中断描述符表、中断门和陷阱门_ev.mp429.79M
|   ├──--本章程序介绍_ev.mp456.64M
|   ├──--创建并安装全部的256个中断门_ev.mp447.84M
|   ├──--为实时时钟中断创建和安装中断门_ev.mp421.08M
|   ├──--加载中断描述符表寄存器IDTR_ev.mp414.26M
|   ├──--重新设置8259A主片的中断向量_ev.mp437.43M
|   └──--中断和异常发生时的特权级检查_ev.mp412.34M
├──{31}--分页和动态页面分配
|   ├──--设置控制寄存器CR3和CR0开启分页功能_ev.mp413.40M
|   ├──--在调试器中观察页目录表和页表_ev.mp451.87M
|   ├──--准备将内核映射到虚拟内存的高端_ev.mp426.11M
|   ├──--在分页机制下访问页目录表自身_ev.mp420.23M
|   ├──--使内核在虚拟内存高端的映射生效_ev.mp428.68M
|   ├──--为内核任务创建任务控制块TCB_ev.mp432.55M
|   ├──--为内核任务的TSS分配内存空间_ev.mp430.63M
|   ├──--处理与线性地址对应的页目录项和页表项_ev.mp427.06M
|   ├──--根据需要分配物理页并设置页表项_ev.mp410.42M
|   ├──--物理内存的页面管理和页映射位串_ev.mp429.05M
|   ├──--保护模式下的段式虚拟内存管理_ev.mp427.08M
|   ├──--空闲页的搜索和BTS指令_ev.mp412.47M
|   ├──--空闲页搜索和分配的具体过程_ev.mp421.27M
|   ├──--确立内核任务并开始创建用户任务_ev.mp436.15M
|   ├──--用户任务的内存分配策略_ev.mp426.37M
|   ├──--清空内核任务页目录表的前半部分并刷新TLB_ev.mp427.57M
|   ├──--为用户任务分配内存并创建LDT_ev.mp421.21M
|   ├──--用户程序的加载和重定位_ev.mp438.74M
|   ├──--用户任务页目录表的创建和访问以及INVLPG指令_ev.mp443.95M
|   ├──--第二个用户任务的创建和分页模式下的任务切换_ev.mp432.05M
|   ├──--分页模式下多任务切换的演示和调试_ev.mp4107.49M
|   ├──--每个任务独立的虚拟内存_ev.mp414.29M
|   ├──--物理内存的分页以及段到页的拆分_ev.mp420.83M
|   ├──--处理器的段部件和页部件_ev.mp420.87M
|   ├──--从线性地址到物理地址的转换过程_ev.mp421.29M
|   ├──--页目录和页表及其地址转换过程_ev.mp428.53M
|   ├──--设计内核的页目录和页表_ev.mp434.58M
|   ├──--页目录项和页表项的组成格式_ev.mp412.55M
|   └──--创建内核的页表并初始化低端1MB对应的页表项_ev.mp418.38M
├──{32}--平坦模型(大结局)
|   ├──--为什么要引入平坦模型及平坦模型的特点_ev.mp424.65M
|   ├──--在主引导程序中创建平坦模型下的段_ev.mp420.55M
|   ├──--平坦模型对内核程序分段的影响_ev.mp443.66M
|   ├──--平坦模型对加载内核程序的影响_ev.mp426.22M
|   ├──--平坦模型下的内核初始化与内核任务的确立_ev.mp447.66M
|   ├──--平坦模型下的用户程序结构_ev.mp437.86M
|   ├──--平坦模型下的用户任务创建_ev.mp413.00M
|   ├──--在用户任务内动态分配内存_ev.mp419.35M
|   └──--平坦模型下的多任务切换演示与调试_ev.mp414.79M
├──X86从实模式到保护模式 源代码.pdf1.13M
└──x86汇编语言-从实模式到保护模式.文字版.pdf33.90M


**** 本内容需购买 ****

1122 发表于 2023-11-18 08:01

看到这帖子真是高兴!

sjz051 发表于 2023-11-18 08:03

激动人心,无法言表!

onlyougao 发表于 2023-11-18 08:11

看到这帖子真是高兴!

loveU 发表于 2023-11-18 08:20

我只是路过打酱油的。

turboted 发表于 2023-11-18 08:26

我只是路过打酱油的,而且這只是x86 不是x64

learningandlivi 发表于 2023-11-18 08:31

无回帖,不论坛,这才是人道。

groupone 发表于 2023-11-18 08:34

强烈支持楼主ing……

carrot_rk 发表于 2023-11-18 08:55

强烈支持楼主ing……

yjip267 发表于 2023-11-18 09:03

强烈支持楼主ing……
页: [1] 2 3 4 5 6 7 8 9 10
查看完整版本: 李述桐-X86汇编语言