汇编语言笔记10
汇编语言笔记10 DF标志和串传送指令、pushf和popf flag的第十位是DF,方向标志位,在串处理指令中,控制每次操作后si,di的自增或自减 DF=1,每次串处理指令操作后si,di递减 DF=0,每次串处理指令操作后si,di递增 汇编语法提供了设置DF值的指令:cld和std cld:令DF=0 std:令DF=1 串传送指令 将ds:si指向的内存单元中的数据送入es:di中。 movsb:一次传送一个字节(8位) es X 16+di = ds X 16+si,先传送 si,di的值根据DF的值递增或递减(每次改变1) movsw,一次传送一个字(16位) es X 16+di = ds X 16+si,先传送 si,di的值根据DF的值递增或递减(每次改变2) REP指令 rep指令是根据cx的值,重复执行后面的串传送指令: rep...
汇编语言笔记9
汇编语言笔记9 CMP比较指令和条件转移指令 cmp指令 cmp指令是比较指令。其相当于减法指令,只是不保存结果,只影响标志寄存器的值。其他指令可以通过识别这些标志寄存器的值来识别结果。 CMP AX,BX:比较ax和bx的大小: 无符号数: ax和bx的关系 运算结果 标志寄存器的值 ax=bx ax-bx=0,即zf=1 zf=1 ax != bx ax-bx!=0,即zf=0 zf=0 ax>bx ax-bx>0,且不产生借位 zf=1,且cf=0 ax>=bx ax-bx>=0,且不必借位 cf=0 ax<bx ax-bx<0,且产生借位 cf=1 ax<=bx ax-bx<=0,且可能借位 zf=1 或...
汇编语言笔记8
汇编语言笔记8 进、借位加减法 进位加法 adc,是带进位的加法指令,利用了CF位记录的进位值 adc ax,bx:ax=ax+bx+cf 例 123456mov ax,2mov bx,1sub bx,ax;产生借位,CF=1adc ax,1;结果为ax+1+CF=4 借位减法 sbb,是带借位的减法指令,利用了CF位记录的值 sbb ax,bx:ax=ax-bx-cf 例 12sbb ax,2;ax-2-CF 指令应用:大数相加:对两个128位数据进行相加 123456789101112131415161718192021222324252627282930313233343536data segment dw 8个16位数据,共占16字节,第一个大数 dw 8个16位数据,共占16字节,第二个大数data endscode segmentstart:mov ax,data mov ds,ax mov si,0;第一个大数的起始偏移地址 mov di,16;第二个大数的起始偏移地址 mov cx,8;循环8次 call...
汇编语言笔记7
汇编语言笔记7 标志寄存器 8086CPU的标志寄存器有16位,其中存储的信息称为程序状态字。 flag寄存器是按位起作用,每一位都有专门的含义。 ZF标志 ZF标志是零标志位。它记录相关指令执行之后,其结果是否为0。 如果结果为0,则ZF=1(逻辑真) 如果结果不为0,则ZF=0(逻辑假) PF标志 PF标志是奇偶标志位。它记录相关指令执行后,结果的所有bit位中的1的个数是否为偶数个 如果1的个数为偶数个,则PF=1 如果1的个数为奇数个,则PF=0 例: 123mov al,1or...
Unity中TMP使用中文字体
Unity中TMP使用中文字体 Unity中的TMP不支持中文,因此要自行制作中文字体。 制作步骤: 准备中文字库(字库在后面) 准备一款中文字体(可以在C:\Windows里面找) 将字体拷贝到Unity工程文件夹内 Window-TextMeshPro-Font Asset Creator 1.字体文件 2.字体图集大小(太小可能显示不全)3.字库文件 点击 Generate Font...
操作系统笔记5
操作系统笔记5 CPU调度 多道程序是为了是的CPU在任何时候都有某些进程运行,以使得CPU使用率最大化,多个进程可以同时存在内存中,当一个进程必须等待时,操作系统会从该进程拿走CPU使用权,将CPU使用权交给其他进程。 CPU-I/O区间周期 进程的执行由CPU执行和I/O等待周期组成。进程执行从CPU区间,CPU burst开始,之后是I/O区间 ,I/O...
操作系统笔记4
操作系统笔记4 进程的概念 进程调度 多道程序设计的目的是无论何时都有进程在运行,从而使CPU的利用效率最大化。 为了达到此目的,进程调度选择一个可用的进程到CPU执行 Job queue,作业队列:在系统中 Ready queue,就绪队列:在内存中,等待被执行 Device queue,设备队列:一组等待I/O的进程 调度队列和调度程序 进程进入系统时,会被加入到作业队列中。驻留在内存中就绪的、等待运行的会保存在就绪队列中。该队列一般通过链表的形式来实现。 长程调度程序/作业调度程序:从磁盘后备队列->内存,执行频率不高,用于控制进程道数 短程调度程序/CPU调度程序:执行频率高 上下文切换 将CPU切换到另一个进程需要保存当前进程的状态并恢复另一个进程的状态,这一任务称为上下文切换。 当发生上下文切换时,内核会将旧进程的状态保存在其PCB中。然后装入要执行的新进程的上下文。 进程操作 进程创建 进程在其执行的过程中,能通过创建进程系统调用,create-process system...
操作系统笔记3
操作系统笔记3 进程 进程的概念 进程的概念:具有一定独立功能的程序关于某个数据集合的一次运行过程 在批处理中称为job,在分时系统里称为task 在本课程中不区分进程和作业 进程和程序的区别 程序是静态的,而进程是动态的 生命周期:程序是永久的,进程是有 创建—>存活—>消亡...
汇编语言笔记4
汇编语言笔记4 寄存器(内存访问) 内存中字的存储 由于内存单元是字节单元,一个单元存放一个字节。则一个字要用两个地址连续的内存单元来存储 这个字的高位字节存在高地址中,地位字节存在低地址中 例:4E20H存放: DS和[address] CPU要读写一个数据,必须知道数据的内存单元地址在哪。8086CPU中,内存地址由段地址和偏移地址组成,DS寄存器通常用来存放要访问的数据的段地址 例子:读取10000H单元的内容并存到al中: 123mov bx,1000Hmov ds,bxmov...
汇编语言笔记3.5-Debug的使用
汇编语言笔记3.5-Debug的使用 概述 R命令:查看,改变CPU寄存器的内容 D命令:查看内存中的内容 E命令:改写内存中的内容 U命令:将内存中的机器指令翻译成汇编指令 T命令:执行机器指令 A命令:以汇编语言的格式在内存中存入机器指令





