数组处理与浮点指令详解
数组处理
在编程中,数组是一种常见且重要的数据结构。下面我们详细探讨数组的打印、最小值查找、主程序实现以及命令行参数数组的使用。
数组打印
数组的打印通过 print 函数实现。该函数与 fill 函数类似,由于会调用其他函数,所以需要在栈上保存 3 个值。以下是 print 函数的代码:
print ( array , size ) ;
print :
. array equ 0
. size equ 8
. i equ 16
push rbp
mov rbp , rsp
sub rsp , 32
mov [rsp+ . array] , rdi
mov [rsp+ . size] , rsi
xor eex , eex
mov [rsp+ . i] , rex
segment . data
. format :
db "%10d" , Ox0a , O
segment . text
. more
lea rdi , [ . format]
mov rdx , [rsp+ . array]
mov rex , [rsp+ . i]
mov esi , [rdx+rex*4]
mov [rsp+ . i] , rex
call print£
mov rex , [rsp+ . i]
inc rex
mov [rsp+ . i] , rex
cmp rex , [rsp+ . size]
j l .more
leave
ret
该函数的执行流程
超级会员免费看
订阅专栏 解锁全文
8

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



