首页 > 编程知识 正文

c语言程序设计,汇编语言与接口技术期末考试

时间:2023-05-04 21:51:49 阅读:116075 作者:2640

知识点2的10次是1k

地址总线为20位时,内存最大为1m的理由: 2的20次方1024k=1M

变量是指存储单元指向起始地址

段寄存器偏移地址段寄存器cs http://www.Sina.com/http://www.Sina.com/http://www.Sina.com/http://www.Sina.com/3http://ww

DS段BX、SI、DI或16位

SS堆积码头SP或BP

ES附加段

现实硬币的值(16位)向左移动4位(即末尾加上4位二进制0 )=现实硬币的地址

EA (有效地址)=基址)索引值x比例因子)移位量

物理地址=EA现实硬币地址

其他一台计算机可以执行的所有指令,都称为其机器的指令系统或指令集,具体内容是指令格式、寻址方式、指令类型指令系统层是软硬件之间的接口,硬件的任务是执行指令

8086CPU是16位微处理器,CPU的内外数据总线为16位,可以在一个总线周期内传输一个字(16位)的数据,地址总线为20位,可以寻址1MB的主存储区域

串行序列必须运行一个命令,然后从主内存中读取以下命令

8086/8088CPU的主存储容量为1MB,其主存储单元地址为20位。 另一方面,CPU内部的寄存器和数据路径为16位。 如何将16位地址码扩展到20位?

解决方法:将1MB主存区域划分为几段,每段最大长度为64KB。 在对应的BIU中,设置存储20位起始地址的前16位的寄存器,称为现实的硬币值,从EU或指令指针IP到段内的偏移地址(也称为偏移) :在一个主存储单元及其段中

地址总线20位00000H-FFFFFH、字节存储、字存储、双字存储

有效地址: CPU通常以指令的地址方式计算或由指令指针IP提供

逻辑运算指令DEST; 目的操作数SRC :源操作数

AND逻辑和指令指令格式: AND DEST,SRC为0或1 OR逻辑或指令格式: OR DEST,SRC为1,结果为1 XOR异或指令格式: XOR DEST,SRC相同则为0,不同则为1 NOT逻辑

算术运算类指令ADD加法

命令格式: ADD DEST、SRC两个个数相加的结果,存储在DEST中的MOV传送命令

指令格式: MOV DEST,SRC将SRC中的操作数复制到DEST XCHG交换指令中

指令格式: MOV DEST,SRC交换将源操作数和目的操作数的内容相互减法运算的指令

SUB命令

指令格式: SUB DEST,SRC完成从目标操作数中减少死亡源操作数。 即SEST=(SEST )-(SRC ) DEC指令

命令格式: DEC DEST作用:自减法,DEST=(DEST )- 1 CMP命令

指令格式: CMP DEST,SRC两个操作数的差不保留结果,只保留其中改变的标志位。 OF、SF、ZF、AF、PF等移位命令SHL逻辑左移SHR逻辑右移SAL算术左移SAR算术右移ROL循环左移ROR循环右移RCL波段进位循环左移RCR波段进位循环右移命令格式:

RCLDEST,COUNT汇编器案例数据的分段定义格式:

数据分段; 数据段DATA ENDS堆积码头定义格式:

堆叠1 segment para堆叠; 码头dw20hdup(0)堆栈1结束代码段; 代码段assume cs :代码、ds :数据、es :外部; 每个段的存储位置START: MOV AX、DATA; 现实硬币是指DS MOV DS、AX指令串MOV AH、4CH; 调用4CH功能,4CH功能号INT 21H; 退出程序CODEENDSENDSTART汇编语言语句格式:

计算:

f=(10 ) xy )3) z1 ) )/2f=(10* ) xy )-3 * (z-1 ) ) ) f=(10 ) xy )3) z1 ) )/2

结果存储在FUN中

数据分段; 数据段VARXDW123H设置; YVARZDW789H,定义变量xVARYDW456H; ZFUNDW? 堆栈数据结束堆栈1 segment para堆栈设置; dw20hdup(0)堆栈1结束代码段; 代码段assume cs :代码、ds :数据、ss :堆栈1; 各段的存储位置STAET: MOV AX、DATA; 现实的硬币是指DS MOV DS、AX MOV AX、VARX; 获取变量并复制到AX中的ADD AX,VARY; AX=(xy ) MOV BX,ax; bx=ax=(xy ) SAL AX,1; ax=2*(xy )算术左移,相当于X2 SAL AX,1; ax=4*(xy ) ADD AX,BX; ax=5*(xy ) SAL AX,1; ax=10*(xy ) MOV BX,VARZ; 取变量Z DEC BX; BX=BX-1=Z-1 MOV CX,BX; CX=BX=Z-1 SAL BX,1; CX=2*(z-1 ) ADD BX,CX; BX=3*(z-1 )子ax,bx; ax=10*(xy )-2* ) z-1 ) SAR AX,1; AX={10*(xy )-2 * (z-1 ) }/2算术右移相当于/2 MOV FUN,ax; 结果保管MOV AH、4CH; 调用4CH功能,4CH功能号INT 21H; 结束程序ODE ENDS END START

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。