汇编语言
小学五年级在读的蒟蒻
真的很想写操作系统
展开
-
汇编语言——内存定位的方法
汇编语言——内存定位的方法内存的寻址 方式[idata],使用常量来表示地址,可直接用于定位一个内存单元[bx],一个变量来表示内存地址,可间接定位一个内存单元[bx+idata],用一个变量和常量来表示地址,可在一个起始地址的位置上用变量定位一个内存单元[bx+si],用两个变量表示地址[bx+si+idata],用两个变量和一个常量表示地址将datasg段中每个菜单的首字母改为大写assume cs:codesg,ds:datasgdatasg segmentdb '1. f原创 2021-12-15 12:03:00 · 440 阅读 · 0 评论 -
汇编语言——使用and和or进行字符串大小写转换
汇编语言——使用and和or进行字符串大小写转换在codesg中填写代码,将datasg中的第一个字符串转化为大写,第二个字符串转化为小写代码如下,请完善代码assume cs:codesg,ds:datasgdatasg segmentdb 'BaSic'db 'iNforMaTion'datasg endscodesg segmentstart:codesg endsend start分析题目,可得小写字母的ascii码值比大写字母的ascii码值大20H,如果将小原创 2021-12-14 20:09:48 · 671 阅读 · 0 评论 -
汇编语言---关于自定义的段占用内存空间
汇编语言—关于自定义的段占用内存空间对于如下定义的段:name segment…name ends如果段中的数据占N个字节,则程序加载后,该段实际占用的空间为(N+15)/16原理:由于8086处理器有20根地址线,可以传送20位地址,达到1MB的寻址能力但是8086处理器里面只有16根,使用任何一个寄存器都无法达到1MB的寻址空间,所以8086处理器使用段寄存器和普通寄存器组合使用来寻址,对于cpu取址来说使用cs:ip来获取下一条指令的位置,对于堆栈处理使用ss:sp进行处理,原创 2021-12-06 15:21:59 · 415 阅读 · 0 评论 -
汇编 复制内存单元的内容
汇编 复制内存单元的内容思路:通过不断调整ds的值然后配合bx寄存器不断修改基址和偏移地址;将内存ffff:0~ffff:b的单元中数据复制到0:200~0:20b单元中assume cs:codecode segment mov bx,0 ;偏移地址 mov cx,12 ;0-b 一共12个地址re: mov ax,0ffffh mov ds,ax ;将内存ffff的基址给ds设置 mov dl,[bx] ;将ds:[bx]位置的数据交给dl寄存器原创 2021-12-05 21:11:12 · 724 阅读 · 0 评论 -
汇编语言<王爽>物理地址的计算
cpu访问内存单元必须要给出内存单元的地址。所有内存单元构成的存储空间是线性的一维空间,每一个内存单元都有一个唯一的地址,我们称唯一地址为物理地址。不同cpu有不同的物理地址形成方式8086有20根地址线可以传送20位地址,达到1MB的寻址空间。但8086的数据线宽度只有16位,如果从cpu内部发出地址,那么他一次只能发出16位,表现出的寻址能力只有2的16次方64KB。所以8086cpu采用一个在内部使用两个16位地址合成一个20位的物理地址。8086CPU读取内存的步骤:CPU中的相关部件提供.原创 2021-09-09 16:12:35 · 1345 阅读 · 0 评论 -
汇编语言<王爽>第二章寄存器
8086的寄存器有14个。分别为:AX,BX,CX,DX,SI,DI,SP,BP,IP,CS,SS,DS,ES,PSW通用寄存器8086的所有寄存器都是16位的,可以存放两个字节。AX,BX,CX,DX这几个寄存器通常存放一般性数据,又称为通用寄存器。由于8086的上一代cpu寄存器都是8位的为了保持向上兼容,使上代的cpu编写的程序稍加修改即可以在8086上运行。所以8086的通用寄存器每一个都可以分为两个独立运行的八位寄存器来用AX=AH+ALBX=BH+BLCX=CH+CL.原创 2021-09-09 13:46:58 · 185 阅读 · 0 评论 -
汇编语言<王爽>第一章基础知识
cpu总线cpu是通过地址总线来对内存单元进行寻址的,一根导线的状态在计算机只有1或0两种状态,十根地址总线可传输10个二进制位,10个二进制位可表示2的10次方个不同数据。一个cpu有n根地址线则可以说这个cpu的地址总线宽度位n。这样的cpu最多可以找到2的n次方个不同的内存单元。地址总线宽度决定cpu的最大寻址能力数据总线宽度决定cpu一次传输的最大数据量控制总线宽度决定cpu对系统其他器件的控制能力例题:1个cpu的寻址能力为8KB,那么他的地址总线宽度为2的10次方+2的3次方=10原创 2021-09-09 11:51:26 · 68 阅读 · 0 评论