汇编语言学习笔记(续)
15-18节课
tip:cpu与外设直接传送字符的ASCII
这里很多笔记采取图片形式,因为ppt上有,而且都和前面比较类似,认真看了前面的现在的都能理解了,就不再手敲一边添加帮助理解的文字了。
标志寄存器传送指令
标志送AH指令: LAHF
执行操作: (AH) <- (FLAGS的低字节)
AH送标志寄存器指令: SAHF
执行操作: (FLAGS的低字节) <- (AH)
标志进栈指令: PUSHF
执行操作: (SP) <- (SP) - 2
( (SP)+1, (SP) ) <- (FLAGS)
标志出栈指令: POPF
执行操作: (FLAGS) <- ( (SP)+1, (SP) )
(SP) <- (SP) + 2
影响标志位
例:
mov AX, 37C8H
SAHF; AH ->Flags的低8位
问 CF,PF的值为?
解:根据标志位寄存器
可知,CF=1,DF=1
例:
MOV AX, 1234H
ADD AX,5678H
push AX
popF
问CF,OF的值为多少?
解:同上,考虑栈的存储是高地址向低地址延伸
CF = 0,OF = 1
类型转换指令
CBW AL -> AX
执行操作: 若(AL)的最高有效位为0,则(AH)= 00H
若(AL)的最高有效位为1,则(AH)= FFH
CWD AX -> (DX,AX)
执行操作:若(AX)的最高有效位为0,则(DX)= 0000H
若(AX)的最高有效位为1,则(DX)= FFFFH
例:(AX) = 0BA45H
CBW ; (AX)=0045H
CWD ; (DX)=0FFFFH (AX)=0BA45H
* 无操作数指令
* 隐含对AL 或AX 进行符号扩展
* 不影响条件标志位
1.字节扩展指令
格式:CBW
功能:将AL的符号位扩展到AH
例:
MOV AL,9AH
CBW;AX=FF9AH
2.字扩展
格式:CWD
功能:将AX的符号位扩展到DX
例:
MOV AX,8ACDH
CWD;DX = FFFFH
算术指令
· 加法指令
ADD、ADC、INC
· 减法指令
SUB、SBB、DEC、NEG、CMP
· 乘法指令
MUL、IMUL
· 除法指令
DIV、IDIV
· 十进制调整指令
DAA、DAS、
AAA、AAS、AAM、AAD
加法指令
加法指令: ADD DST, SRC
执行操作: (DST) <- (SRC) + (DST)
带进位加法指令: ADC DST, SRC
执行操作: (DST) <- (SRC) + (DST) + CF
加1指令: INC OPR
执行操作: (OPR) <- (OPR) + 1
除INC指令不影响CF标志外,均对条件标志位有影响。
1.ADD
格式:ADD DST, SRC
功能:DST<-DST+SRC
2.ADC
格式:ADC DST,SRC
功能:DST<-DST+SRC+CF
带进位的加法
3.加1指令
格式:INC OPRD(OPRD不能为立即数)
功能:OPRD<-OPRD+1
减法指令
1.求补指令
格式:NEG OPRD
功能:OPRD<- -(OPRD);OPRD不能为立即数
2.比较指令
格式:CMP OPR1,OPR2
功能:OPR1 - OPR2 只影响Flags
乘法指令
1.无符号数乘法
1.字节乘法格式
mul SRC
功能:AL*SRC ->AX
SRC为字节操作数
2.字乘法格式(SRC字类型)
mul SRC
功能:AX*SRC ->(DX,AX)
计算 27*15=?
mov AL,27
mov BL,15
mul BL
AL*BL ->AX
2.有符号乘法
1.字节乘法
imul SRC ;AL*SRC ->AX
2.字乘法
imul SRC ;AX*SRC -> (DX,AX)
mov AL,-2
AL = FEH
有符号数:-2
无符号数:254
-17D在8位机上的补码为EFH
在16位机上表示无符号数的十进制数为65519
十六进制为FFEEH
除法指令
除法中余数的符号与被除数一致
mov AX,-5
mov BL,2
IDIV BL
AX:FFFEH
AX/BL(商送AL,余数送AH)
mov AX,-5
mov BL,2
DIV BL
AX = 017DH
例题:
1.写出计算(25*18-76)/ (-19)的指令序列
mov AL,25
mov DL,18
imul DL
SUB AX,76;AX<-AX-76
MOV BL,-19
IDIV BL
2.(2518*1988-2569)/1182
mov AX,2518
mov BX,1988
imul BX;(DX,AX)<-2518*1988
SUB AX,2569
SBB DX,0;结果在(DX,AX)中
mov BX,1182
IDIV BX
3.用8086汇编指令实现:
(2258+1983)*2205-1768*271
解:
mov AX,2258
ADD AX,1983
mov BX,2205
imul BX;(DX,AX)
mov BX,DX
mov CX,AX
mov AX,1768
mov BX,271
imul BX;(DX,AX)<-1786*271
SUB CX,AX
SBB BX,DX;结果在(BX,CX)
19-20节课
十进制和二进制的除法上机操作
十进制:12345678 / 2811
mov ax,1234
mov bx,10000
mul bx ;(dx,ax)=12340000
add ax,5678
adc dx,0 ;(dx,ax)=12345678
mov bx,2811
div bx
二进制: 12345678 / 2811
mov ax,5678H
mov dx,1234H
mov bx,2811H
div bx
十进制调整指令
BCD码:用二进制编码的十进制数,又称二--十进制数
压缩的BCD码:用 4 位二进制数表示 1 位十进制数
例:( 59 )10 =( 0101 1001 )BCD
非压缩的BCD码:用 8 位二进制数表示 1 位十进制数
例:( 59 )10 =( 0000 0101 0000 1001 )BCD
例:写出( 3590 )10的压缩 BCD 码和非压缩BCD码,并分
别 把它们存入数据区 PAKED 和 UNPAK
压缩BCD: ( 3590 )10=( 0011 0101 1001 0000 )BCD
非压缩BCD:
( 3590 )10=( 00000011 00000101 00001001 00000000 )BCD
非压缩
1.AAA:非压缩BCD码加法调整指令
格式:AAA
功能:对两个非压缩BCD码相加存于AL中的和进行十进制调整
调整规则:若AL的低4位大于9或AF=1,则AL+6,AH+1,CF与AF置1,AL的高4位清零;否则,CF和AF清零。(因非压缩BCD码,故适用于被加数与加数为1位数的加法)
例1: 7+9=?
MOV AL,7
ADD AL,9 ;AX=0010H ,AF=1
AAA ;AX=0106H ,CF=1 AF=1
2.非压缩BCD码减法调整指令AAS
格式:AAS
功能:对两个非压缩BCD码相减存于AL中的差进行十进制调整
调整规则:若AF=1,则AL-6 ,AH-1 ,CF=1 ,截取AL低4位;否则,只截取AL低4位。
例1:
MOV AL,2
SUB AL,5 ;AX=00FDH ,AF=1,CF=1
AAS ;AX=FF07H ,AF=1,CF=1
3.非压缩BCD乘法调整指令AAM
格式:AAM
功能:对两个非压缩BCD码数相乘存于AX中的积进行(十进制)非压缩BCD码的调整。
调整规则:AX÷10的商存放在AH中,AX÷10的余数存放在AL中。
注:该指令影响PF、SF、ZF。
例:MOV AL,7
MOV BL,8
MUL BL ;AX=0038H
AAM ;AX=0506H
4.非压缩BCD码除法调整指令AAD
格式:AAD
功能:对存于AX中的非压缩BCD码被除数(两位十进制数)进行十进制调整。
调整规则:AH×10+AL →AX
(特别说明:BCD码除法是先对被除和进行调整,然后再去做除法。)
例:78 ÷9=?
MOV AX,0708H
AAD ;调整后,AX=004EH
MOV BL,9 ;执行78 ÷9
DIV BL ;AX=0608H (商:8 在AL中 ,余数:6在AH中)
压缩
1.压缩BCD码加法调整指令
格式:DAA
功能:对两个压缩BCD码数(两位数的十进制数,带尾符H)相加存于AL中的和进行十进制调整。(影响:CF、PF、AF、ZF、SF)
调整规则:若AL中的低4位>9,或AF=1,则AL+06H ,AF=1
若AL中的高4位>9,或CF=1,则AL+60H,CF=1
例:计算十进制数:38+97=?
MOV AL,38H
ADD AL,97H ;AX=00CFH AF=0,低4位为F,大于9, 高4位为C,也大于9
DAA ;AX=0035H AF=1,CF=1
2.压缩BCD码减法调整指令
格式:DAS
功能:对两个压缩BCD码数(两位数的十进制数,带尾符H)相减存于AL中的差进行十进制调整。(影响:CF、PF、AF、ZF、SF)
调整规则:若AL中的低4位>9,或AF=1,则AL-06H ,AF=1
若AL中的高4位>9,或CF=1,则AL-60H,CF=1
例:计算十进制数:38-97=?
MOV AL,38H
SUB AL, 97H ;AX=00A1H AF=0, AL的高4位为A,大于9,CF=1
DAS ;AX=0041H AF=0,CF=1
循环指令
格式:LOOP 标号
功能: 循环次数先送CX,然后执行指令LOOP 标号 时,先CX-1送CX,若CX不等于0 转标号处执行,否则执行循环指令的后续语句。
例:计算s=1+2+...+100
mov cx,100
mov s,0
mov ax,1
AA1:add s,ax
inc ax
loop aa1
例:计算s=1*2+2*3+3*4+...
mov cx,10
mov s,0
mov ax,1
mov bx,2
aa1:mul bx
add s,ax
mov ax,bx
inc bx
loop aa1
21-22节课
DOS中断调用
一.常用的DOS中断 INT 21H
1.DOS中断的执行步骤(分3步)
第一步:置入口参数
第二步:功能号送AH
第三步:执行 INT 21H
(1)1号功能
格式:MOV AH, 1
INT 21H
功能:接收键盘输入一个ASCII字符值保存在寄存器AL中
(2)2号功能
格式:MOV DL, 字符的ASCII值
MOV AH, 2
INT 21H
功能:屏幕上输出DL中的ASCII字符
上机例:
MOV DL, 42H ; MOV DL, ‘B’
MOV AH, 2
INT 21H
执行上述3条指令屏幕显示大写字母‘B’
(3)5 号功能
格式:MOV DL, 字符的ASCII值
MOV AH, 2
INT 21H
功能:在打印机上输出DL中的ASCII字符
上机例:
MOV DL, 42H ; 等价指令 MOV DL, ‘B’
MOV AH, 5
INT 21H
执行上述3条指令在打印机输出大写字母‘B’
(4)9号功能
格式: LEA DX, 字符串变量名
MOV AH, 9
INT 21H
功能:在屏幕上显示一串字符。字符串以$ 作为结束符
(5)10号功能( 0AH 号功能)
格式: 格式: LEA DX, 字符串变量名
MOV AH, 10
INT 21H
功能:接收键盘输入一串字符存入到指定的“ 字符串变量名
”缓冲区中。
注:变量定义格式如下
变量名 DB 输入的最大数, 实际数, 数字 DUP(‘$’)
例: A DB 20, 0, 20 dup(‘$’)
解释:定义了一个变量缓冲区A, 最多能输入20个字符,刚开始输入数为0,20个字节空间初始值用’$’填充。
6)4CH号功能,即返回DOS
格式: MOV AH, 4CH
INT 21H
功能:系统运行结束,返回DOS
补充命令
格式:SHR AL,CL
功能:AL逻辑右移CL位数
SHR AL,1;AL右移1位
MOV CL,3
SHR AL,CL;AL右移3位
dos命令分析
数据段:
DATA segment
A DB 20,0,20 dup('$')
DATA ends
代码段:
code segment
assume cs:code,ds:DATA
start:mov AX,DATA
mov DS,AX
输入:
lea ax,a
mov ah,10
int 21h
显示回车:
mov dl,0dh
mov ah,2
int 21h
显示换行:
mov dl,0ah
mov ah,2
int 21h
输出刚输入的内容:
lea dx,a+2
mov ah,9
int 21h
结束:
mov ah,4ch
int 21h
code ends
end start
内存中的储存结构:解释了为什么是从a+2开始以及为什么只能输入最大值-2个数(包括了回车和字符串终止符'$'
二、DOS功能调用实验
实验题:键盘输入一串字符“I am a student.”,按回车键,屏幕显示回车换行后,重新显示该字符串。
C:\>EDIT STRIN.ASM
DATA SEGMENT
A DB 20,0,20 DUP('$')
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:MOV AX,DATAMOV DS,AXLEA DX, AMOV AH,10INT 21HMOV DL,0DHMOV AH,2INT 21HMOV DL,0AHMOV AH,2INT 21HLEA DX,A+2MOV AH,9INT 21HMOV AH,4CHINT 21HCODE ENDSEND START
经存盘,汇编、连接生成STRIN.EXE可执行文件,运行结果如下:
拆字输出数字方法
例:将寄存器AL中的压缩BCD码如何输出?
AL=39H 如何显示数字:3和9。
MOV AL, 39H
MOV CL, 4
SHR AL, CL ;将AL中的39H变成03H
MOV DL, AL
OR DL, 30H
MOV AH, 2
INT 21H ;显示 ‘3’
AND AL, 0FH ;AL的高4位清零
MOV DL, AL
OR DL, 30H
MOV AH, 2
INT 21H ; 显示 ‘9’
从键盘接收十进制数存入BX程序
思想:键盘与CPU是通过ASCII字符传送,即要把输入的数字字符转换成数字,下面程序段的算法思想是:( 例输入数字字符:374 输其它非数字字符退出(((0×10)+3) ×10+7) ×10)+4 ,即将字符’3’,’7’,’4’ 转成数值:374
MOV BX, 0 NEW:MOV AH, 1 INT 21H SUB AL,30HJL EXITCMP AL, 9HJG EXIT
CBW
XCHG AX, BX
MOV CX, 10
MUL CX
XCHG AX, BXADD BX, AXJMP NEWEXIT: ………
利用8086宏汇编编程显示任意十进制数(<=32767,无符号数<=65535)的宏定义和调用程序清单:
多位数的算术运算实验
一、实验目的:通过本实验,让学生掌握非压缩BCD码与压缩BCD码算术运算(+ - × ÷)十进制调整指令的功能(指令:AAA、DAA、AAS、DAS、AAM、AAD),掌握算术运算(+ - × ÷)指令的功能。
二、实验内容
1、分别利用非压缩BCD码与压缩BCD码加、减法计算:
259778+68653=? 259778-68653=?
; 259778+68653=?
非压缩BCD加法
data segment
a db 8,7,7,9,5,2
b db 3,5,6,8,6,0
c db 6 dup(0)
data ends
code segment
assume cs:code,ds:data
start:mov ax,datamov ds,axmov cx,6mov si,0clcaa1:mov al,a[si]adc al,b[si]aaamov c[si],alinc siloop aa1mov si,5mov cx,6aa2:mov dl,c[si]or dl,30hmov ah,2int 21hdec siloop aa2mov ah,4chint 21hcode endsend start
非压缩BCD码减法 259778-68653=? 程序清单?将上述程序中程序行
adc al, b[si]
aaa
改为如下:
sbb al, b[si]
aas
259778+68653=? 压缩BCD加法
data segment
a db 78h,97h,25h
b db 53h,86h,06h
c db 3 dup(0)
data ends
code segmentassume cs:code,ds:datastart:mov ax,datamov ds,axmov cx,3clcmov si,0aa1:mov al,a[si]adc al,b[si]daa mov c[si],alinc siloop aa1mov cx,3mov si,2aa2:mov dl,c[si]push cxmov cl,4shr dl,clor dl,30hmov ah,2int 21hpop cxmov dl,c[si]and dl,0fhor dl,30hmov ah,2int 21hdec siloop aa2mov ah,4chint 21hcode endsend start
注:压缩BCD码减法 259778-68653=? 程序清单?
将上述程序中程序行
adc al, b[si]
daa
改为如下:
sbb al, b[si]
das
2、利用DEBUG命令单步步执行命令T,通过查看寄存器内容,检验BCD码运算调整指令的功能。
(1)MOV AL,12H
SUB AL, 5 ;AX=
AAS ;AX=
(2)MOV AL,12H
SUB AL,5 ;AX=
DAS ;AX=
(3)MOV AL,2
SUB AL,5 ;AX=
AAS ;AX=
(4)MOV AL,2
SUB AL,5 ;AX=
DAS ;AX=
(5)MOV AL,5
ADD AL,7 ;AX=
AAA ;AX=
(6)MOV AL,5
ADD AL,7 ;AX=
DAA ;AX=
(7)MOV AL,37H
ADD AL,98H ;AX=
DAA ;AX=
(8)MOV AL,37H
ADD AL,98H ;AX=
AAA ;AX=
(9)MOV AL,-3
MOV BL,2
IMUL BL ;AX=
(10)MOV AL,-3
MOV BL,2
MUL BL ;AX=
(11)MOV AX,-5
MOV BL,2
IDIV BL ;AX=
(12)MOV AX,5
MOV BL,-2
IDIV BL ;AX=
(13)MOV AX,-5
MOV BL,-2
IDIV BL ;AX=
(14)MOV AX,5
第23-24节课
逻辑运算指令
这里比较简单就放个图给大家理解
移位指令
逻辑左移
格式:SHL OPR,CNT
功能:最高位送CF,其余位向左移动,最低位依次补0
逻辑右移
格式:SHR OPR,CNT
功能:最低位送CF,其余位向右移动,最高位依次补0
算术左移
格式:SAL OPR,CNT
功能:同逻辑左移
算术右移
格式:SAR OPR,CNT
功能:最低位送符号位 ,最高位依次补最初符号位数值
循环左移
格式: ROL OPR,CNT
功能:最高位送CF和最低位,其余位左移
循环右移
格式:ROR OPR,CNT
功能:最低位送CF和最高位,其余位右移
带进位循环左移
格式:RCL OPR,CNT
功能:最高位送CF,CF的值送最低位,其余位左移
带进位循环右移
格式:RCR OPR,CNT
功能:最低位送CF,CF送最高位,其余位右移
关于移位指令的移位位数CNT的有关说明:CNT:清进位,CF=0;STC:进位置位,CF=1;CMC:进位取反
关于状态标志位FLags
1.状态标志(6个)
C、P、A、Z、S、O
2.控制标志(3个)
TF、IF、DF(方向)
CLD;DF=0
STD;DF=1
DF=0,地址为增方向,显示UP
DF=1,地址为减方向,显示DN
实验:12345+6789=?
DATA segment
A DB 8,1,1,8,2,7,9,0
B DB 9,6,5,1,1,8,8,0
C DB 8 DUP(0)
DATA ends
code segment
assume cs:code,DS:data
start: mov AX,DATAmov DS,AXmov Si,0mov cx,8clcaa1:mov al,a[si]adc al,b[si]aaamov c[si],acinc siloop aa1mov cx,8mov si,0aa2:mov dl,c[si]or dl,30Hmov ah,2int 21hdec siloop aa2mov ah,4chint 21hcode endsend start
AC=39H,显示39H
//显示3
push AX
mov CL,4
SHR AL,CL
mov DL,AL
or DL,30H
mov AH,2
int 21H
//显示9
pop AX
AND AL,0FH
mov DL,AL
or DL,30H
mov AH,2
int 21H
mov AH,4CH
int 21H
第25-26节课
串操作指令
串操作实验案例
一、【实验目的】本实验掌握字符串扫描指令SCAS的功能,充分理解串操作中涉及的DS、ES、SI,DI的使用方法;理解串操作前缀REP、REPE/REPZ、REPNE/REPNZ的使用方法;通过本实验起到举一反三,以达到抛砖引玉的作用,让大家掌握其它串操作指令的使用。
1.串传送指令MOVS(MOVSB,MOVSW)
2.串存入指令STOS(STOSB,STOSW)
3.从串取指令LODS(LODSB,LODSW)
4.串比较指令CMPS(CMPSB, CMPSW)
二、【实验内容】已知在内存缓冲区变量A处有一串字符串‘computer’,现通过键盘输入一个字符,通过对缓冲区变量A的字符串‘computer’,查找是否有输入的字符,如存在,屏幕显示’Y’,并显示输入的这个字符在‘computer’的序号;否则显示‘N’。
例:输入: r 输入:w
显示: Y 显示:N
8
解释:因为字符‘r‘ 在‘computer’字符串中存在,并且位置为第8个,所以显示‘Y’, 8;而‘w’在‘computer’字符串中不存在,所以显示’N’。
outln macro ;定义宏指令outln, 用于显示回车和换行
mov dl,0dh ;显示回车
mov ah,2
int 21h
mov dl,0ah ;显示换行
mov ah,2
int 21h
endm ;宏定义结束
data segment
a db 'computer' ;内存变量a缓冲区字符串的定义
data ends
code segment
assume cs:code,es:data
start:mov ax,datamov es,ax ;SCAS操作是对目标段查找,所以段地址送ESmov ah,1 ;键盘输入一个ASCII字符到AL中int 21hpush ax ;输入在AL中的字符入栈保护outln ;调用宏指令显示回车换行pop axmov cx,8 ;以下3条指令为执行串操作SCASB的准备lea di,acldrepnz scasb ;在CX不为0且没找到的情况下重复执行串查找指令scasbjnz nofind ;没找到,转标号nofindmov dl,'Y' ;找到显示’Y’mov ah,2int 21houtln ;显示回车换行mov dx,8sub dx,cx ;利用CX定位字符与字符串的匹配位置值or dl,30h ;显示位置值mov ah,2int 21hjmp over ;转程序结束处
nofind: mov dl,'N' ;没匹配显示’N’mov ah,2int 21hover: mov ah,4ch ;程序结束INT 21Hcode endsend start
程序运行结果如下:
第27-28节课
转移指令
一、转移指令格式
JXXX 目标
功能:有条件或无条件转到目标处执行。
1.无条件转移指令格式
JMP 目标
功能:无条件转到目标处执行
SHORT(可省略) , NEAR PTR , FAR PTR (段间)
2.有条件转移指令
几个重要的英语单词
Above 高于;Below 低于; Not 不; Equal 等于
Zero 为零; Great 大于 ; Less 小于
S:负SF=1; C:有进位 CF=1;
Equal= Zero
JE完全等价于JZ
3.无符号数比较
说明:-1表示字节无符数:255
-1表示字无符数:65535
-n 示字节无符数:256-n;表示字无符数:65536-n
高级语言 汇编语言
> JA (不小于低于,等价:JNBE)
>= JAE/JAZ (不低于,等价:JNB)
< JB 等价于:JNAE
<= JBE JNA
== JE/JZ
<>(不等于) JNZ/JNE
例:
MOV AL, -2
CMP AL, 45
JA AA1
......
请问程序会转到AA1吗? 会
4. 有符号数比较
高级语言 汇编语言
> JG 或 JNLE
>= JGE 或 JNL
< JL 或 JNGE
<= JLE 或 JNG
== JE/JZ
<> JNZ/JNE
MOV AL, -2
CMP AL, 45
JG AA1
......
请问程序会转到AA1吗? 不会
选择题:转移指令助记符JNA 等价的是( B )
A、JNG B、JBE C、JNL D、JMP
要求:编程完成S=1+2+3+…+100
程序:
MOV AX,0
MOV BX,1
MOV CX,100
AA1:ADD AX, BX
(INC BX ) 戓填:ADD BX, 1
LOOP AA1
要求:编程完成S=2+4+6…+100 (100以内的偶数和)
MOV AX,0
MOV BX,2
MOV CX,50
AA1:ADD AX, BX
(INC BX
INC BX ) 戓填:ADD BX, 2
LOOP AA1
要求:S=1X2+2X3+3X4+…+10X11
MOV S, 0
MOV CX,10
MOV DL,1
MOV DH,2
AA1:MOV AL,DL
MOV BL,DH
MUL BL ;1x2送到AX中
ADD S, AX
INC DL
INC DH
LOOP AA1
要求:计算S=1!+2!+…+5!
程序:
MOV S, 0
MOV CX, 5
MOV AX,1
MOV BX,1
AA1:MUL BX
ADD S, AX
INC BX
LOOP AA1
课外作业:计算S=1^2+ 2^2+3^2+…+10^2
(结果:385),写出汇编代码
程序:
mov s,0
mov cx,10
mov ax,1
mov bx,1
aa1:mul bx
add s,ax
inc bx
mov ax,bx
loop aa1
循环指令
和转移指令类似
call指令
RET指令
汇编语言学习笔记(续)相关推荐
- 32位汇编语言学习笔记(45)--测试简单文件操作接口(完)
这是<Assembly Language step by step programming with linux>书中的最后一个程序,也是全书中的最复杂的一个程序. 首先看一下这个程 ...
- MIPS汇编语言学习笔记23:if 语句分支指令
C语言 #include<stdio.h> int main() {int i = 3;if (i < 5){printf("yes!\n");}else{pri ...
- MIPS汇编语言学习笔记07:打印双精度浮点数
课程原视频: https://www.bilibili.com/video/BV19J411y7pA?p=7 程序功能: 设定两个双精度浮点型数据,将其相加后打印输出. 代码: .datamyDoub ...
- windows下32位汇编语言学习笔记
windows下32位汇编语言学习笔记 第一章 第一章 背景知识 80x86处理器的存储器 4个数据寄存器 EAX,EBX,ECX,EDX EAX寄存器 所有API函数的返回值都保存在EAX里,注意 ...
- win32汇编语言学习笔记(三)
汇编语言学习笔记(三) CH3.Windows汇编基础 .386 .model flat,stdcall option casemap:none 定义程序使用的指令集.工作模式 相应的还有:.8086 ...
- MIPS汇编语言学习笔记11:整数减法 (mult方法)
任务:整数相乘,并输出打印. 代码: .dataintA: .word 5intB: .word 2 .textli $v0, 1lw $a1, intAlw $a2, intBmult $a1, $ ...
- 菜鸟的汇编语言学习笔记
汇编语言学习笔记 1.1机器语言 计算机发展初期,人们都是用机器语言进行编程的,这也是人们能实现编程控制计算机的最低级别.那么机器语言是什么样子的呢?就是用0和1组成的一个串(形如011010101) ...
- Linux下汇编语言学习笔记12 ---
这是17年暑假学习Linux汇编语言的笔记记录,参考书目为清华大学出版社 Jeff Duntemann著 梁晓辉译<汇编语言基于Linux环境>的书,喜欢看原版书的同学可以看<Ass ...
- Linux下汇编语言学习笔记65 ---
这是17年暑假学习Linux汇编语言的笔记记录,参考书目为清华大学出版社 Jeff Duntemann著 梁晓辉译<汇编语言基于Linux环境>的书,喜欢看原版书的同学可以看<Ass ...
- Linux下汇编语言学习笔记13 ---
这是17年暑假学习Linux汇编语言的笔记记录,参考书目为清华大学出版社 Jeff Duntemann著 梁晓辉译<汇编语言基于Linux环境>的书,喜欢看原版书的同学可以看<Ass ...
最新文章
- 数据库基础笔记(MySQL)7 —— 存储引擎和视图 ( 完结撒花 )
- 网络数据包信息收集工具ferret-sidejack
- Essential fact about future of PhD studies
- Android MVP模式就是这么回事儿
- python垃圾回收 (GC) 机制
- day4 数组的初始化和练习
- 学科前沿技术专题第六章
- C++ IO 流简介
- 微软职位内部推荐-Software Engineer II-Search
- uefi linux开发环境,UEFI开发学习1 - Ubuntu下搭建UDK2018开发环境
- python123外汇兑换计算器_使用python+PyQt5 实现等额本金计算器
- Spring常用设计模式--抽象工厂模式
- 续:~英语 1038个词根 217个后缀!
- 在阿里云开源镜像站中下载centOS7
- 最常见绩效考核方法有哪些?5种有效方法介绍
- 电信 网通 铁通 DNS服务器IP地址
- 中职计算机公开课说课稿,(完整)中职职高幼教专业手工实践《剪纸(雪花)》公开课说课稿...
- Python基于basemap画论文级别的多子图空间场
- MacBook苹果电脑在充电中无法指纹解锁解决办法
- javascript动态构建函数