;加法和减法 (AddSubTest.asm)
.386
.model flat,stdcall
.stack 4096
ExitProcess proto,dwExitCode:dword
.data
Rval SDWORD ?
Xval SDWORD 26
Yval SDWORD 30
Zval SDWORD 40
.code
main PROC
;INC和DEC
mov ax,1000h
inc ax ;1001h
dec ax ;1000h
;表达式Rval=-Xval+(Yval-Zval)
mov eax,Xval
neg eax ;-26
mov ebx,Yval;
sub ebx,Zval;-10
add eax,ebx
mov Rval,eax;-36
;零标志位实例
mov cx,1 ;
sub cx,1 ;ZR=1
mov ax,0FFFFh
inc ax ;ZR=1
;符号标志位实例
mov cx,0 ;
sub cx,1 ;SF=1
mov ax,7FFFh;
inc ax ;
;进位标志位实例
mov al,0FFh ;
add al,1 ;CF=1,al=00
;溢出标志位实例
mov al,+127 ;
add al,1 ;OF=1
mov ax,-128 ;
sub al,1 ;OF=1
INVOKE ExitProcess,0
main ENDP
END main
009.执行并计算算术运算表达式
最新推荐文章于 2024-04-13 09:06:14 发布
本文深入探讨了汇编语言中的基本运算指令,包括加法、减法、增1、减1等,并通过具体示例展示了如何使用这些指令进行数值运算。此外,还详细解析了汇编语言中的各种标志位,如零标志位、符号标志位、进位标志位和溢出标志位,以及它们在运算过程中的作用和判断条件。
2049

被折叠的 条评论
为什么被折叠?



