题目
A.入口参数使用栈(stack)传递,即所传递的实参被分配在栈中
B.返回地址是CALL指令下一条指令的地址,被保存在栈中
C.EAX、ECX和EDX都是调用者保存寄存器
D.ESI、EDI、EBP和ESP都是被调用者保存寄存器
第1题
A.入口参数使用栈(stack)传递,即所传递的实参被分配在栈中
B.返回地址是CALL指令下一条指令的地址,被保存在栈中
C.EAX、ECX和EDX都是调用者保存寄存器
D.ESI、EDI、EBP和ESP都是被调用者保存寄存器
第2题
A.入口参数使用栈(stack)传递,即所传递的实参被分配在栈中
B.返回地址是CALL指令下一条指令的地址,被保存在栈中
C.EAX、ECX和EDX都是调用者保存寄存器
D.ESI、EDI、EBP和ESP都是被调用者保存寄存器
第3题
A.前6个参数采用通用寄存器传递,其余参数通过栈传递
B.在通用寄存器中传递的参数,都存放在64位寄存器中
C.在栈中的参数若是基本类型,则被分配8个字节空间
D.返回参数存放在RAX相应宽度的寄存器中
第4题
A.每进行一次过程调用,用户栈从高地址向低地址增长出一个栈帧
B.从被调用过程返回调用过程之前,被调用过程会释放自己的栈帧
C.只能通过将栈指针ESP作为基址寄存器来访问用户栈中的数据
D.过程嵌套调用深度越深,栈中栈帧个数越多,严重时会发生栈溢出
第5题
A.每进行一次过程调用,用户栈从高地址向低地址增长出一个栈帧
B.从被调用过程返回调用过程之前,被调用过程会释放自己的栈帧
C.只能通过将栈指针ESP作为基址寄存器来访问用户栈中的数据
D.过程嵌套调用深度越深,栈中栈帧个数越多,严重时会发生栈溢出
第6题
A.静态(static型)变量和非静态局部(auto型)变量都分配在对应栈帧中
B.因为非静态局部变量被分配在栈中,所以其作用域仅在过程体内
C.非静态局部变量可以和全局变量同名,是因为它们被分配在不同存储区
D.不同过程中的非静态局部变量可以同名,是因为它们被分配在不同栈帧中
第7题
A.对于64位数据,x86-64可用一条指令处理,而IA-32需多条指令处理
B.对于入口参数,x86-64可用通用寄存器传递,而IA-32需用栈来传递
C.对于浮点操作数,x86-64存于128位的XMM中,而IA-32存于80位的ST(i)中
D.对于返回地址,x86-64使用通用寄存器保存,而IA-32使用栈来保存
第8题
A.每个栈帧的底部存放的是EBP寄存器内容
B.因为静态变量是局部的,因此被存放在栈帧中
C.每递归调用一次递归过程就生成一个新的栈帧
D.调用过程对应栈帧中最后存放的总是返回地址
第9题
A.ref:方法声明和方法调用都必须使用 ref 关键字
B.ref:实参必须在传递前初始化
C.out:返回前必须对未初始化的参数进行初始化处理
D.out:实参必须在传递前初始化
为了保护您的账号安全,请在“赏学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!