Evaluation Stack如何改写为长尾词?
- 内容介绍
- 文章标签
- 相关推荐
本文共计444个文字,预计阅读时间需要2分钟。
评估栈在Hello World应用描述中经常被提及,是MSIL应用的核心结构。它是应用与内存位置的桥梁。它类似于:评估栈是MSIL应用的核心,连接应用与内存。
Evaluation Stack
The evaluation stack, which is mentioned often in the description of the Hello World application, is the pivotal structure of MSIL applications. It is the bridge between your application and memory locations. It is similar to the conventional stack frame, but there are salient differences. The evaluation stack is the viewer of the application, and you can use it to view function parameters, local variables, temporary objects, and much more. Traditionally, function parameters and local variables are placed on the stack. In .NET, this information is stored in separate repositories, in which memory is reserved for function parameters and local variables. You cannot access these repositories directly. Accessing parameters or local variables requires moving the data from memory to slots on the evaluation stack using aloadcommand. Conversely, you update a local variable or parameter with content on the evaluation stack using astorecommand. Slots on the evaluation stack are either 4 or 8 bytes.
Figure 11-1 shows the relationship between the evaluation stack and the repositories for function parameters and local variables.
The evaluation stack is astackand thereby a last in/first out (LIFO) instrument. When a function starts, the evaluation stack is empty. As the function runs, items are pushed and popped from the evaluation stack. Before the function exits, except for a return value, the evaluation stack must once again be empty. Thejmpandtailinstructions are exceptions to this rule. If the evaluation stack is not empty at exit, the run time raises anInvalidProgramExceptionexception.
The .maxstackdirective limits the number of items permitted simultaneously on the stack. The directive is optional. If the directive is not present, eight slots are reserved on the evaluation stack. The .maxstackdirective is a confirmation that an application is performing as expected. Extra items on the evaluation stack are an indication of potential logic problems in an application or a security violation. In either circumstance, this is a violation worthy of a notification.
refer
本文共计444个文字,预计阅读时间需要2分钟。
评估栈在Hello World应用描述中经常被提及,是MSIL应用的核心结构。它是应用与内存位置的桥梁。它类似于:评估栈是MSIL应用的核心,连接应用与内存。
Evaluation Stack
The evaluation stack, which is mentioned often in the description of the Hello World application, is the pivotal structure of MSIL applications. It is the bridge between your application and memory locations. It is similar to the conventional stack frame, but there are salient differences. The evaluation stack is the viewer of the application, and you can use it to view function parameters, local variables, temporary objects, and much more. Traditionally, function parameters and local variables are placed on the stack. In .NET, this information is stored in separate repositories, in which memory is reserved for function parameters and local variables. You cannot access these repositories directly. Accessing parameters or local variables requires moving the data from memory to slots on the evaluation stack using aloadcommand. Conversely, you update a local variable or parameter with content on the evaluation stack using astorecommand. Slots on the evaluation stack are either 4 or 8 bytes.
Figure 11-1 shows the relationship between the evaluation stack and the repositories for function parameters and local variables.
The evaluation stack is astackand thereby a last in/first out (LIFO) instrument. When a function starts, the evaluation stack is empty. As the function runs, items are pushed and popped from the evaluation stack. Before the function exits, except for a return value, the evaluation stack must once again be empty. Thejmpandtailinstructions are exceptions to this rule. If the evaluation stack is not empty at exit, the run time raises anInvalidProgramExceptionexception.
The .maxstackdirective limits the number of items permitted simultaneously on the stack. The directive is optional. If the directive is not present, eight slots are reserved on the evaluation stack. The .maxstackdirective is a confirmation that an application is performing as expected. Extra items on the evaluation stack are an indication of potential logic problems in an application or a security violation. In either circumstance, this is a violation worthy of a notification.
refer

