高级语法 repeat-until 的使用
程序功能如图(repeat-until实现):
repeat-until 格式:
.repeat
循环体(当条件不满足时候执行)
.until(条件)
代码及详细注释:
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; by 小甲鱼, http://www.fishc.com
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; 功能:高级语法repeat-until的使用,累加1到100的和。
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
.386
.model flat,stdcall
option casemap:none
include windows.inc
include user32.inc
include kernel32.inc
includelib user32.lib
includelib kernel32.lib
.data
bufferdb100 dup(0)
CapMsgdb'输出', 0
szFmt db'1加到100的结果是:%d', 0
i dw1
sum dw0 ; 注意,结果5050不是一个字节可以存放的
.code
start:
.repeat
mov ax, i
add sum, ax
inc i
.until( i > 100 )
xor eax, eax
mov ax, sum
invokewsprintf, ; 格式化字符串输出函数,有点类似 printf
addr buffer, ; 存放字符串的缓冲区
addr szFmt, ; 格式化输出的格式
eax
invokeMessageBox,
NULL,
offset buffer,
offset CapMsg,
MB_OK
invokeExitProcess, 0; 结束进程
end start
{:2_32:} mark 这个容易忘记······:Q 照着做了一遍,做过的感觉比看过来得深刻地多。 激动人心,无法言表!
页:
[1]