假设我想在不使用 POP 的情况下查看堆栈中顶部的两个元素。
我怎样才能访问它 - 我正在尝试:
mov ebp, esp
mov eax, [ebp]
mov ebx, [ebp-4]
Run Code Online (Sandbox Code Playgroud) 上下文:我正在为学校写一个信号量类,其中一个要求是它可能没有用负值初始化.
现在我的构造函数抛出异常:
/**
* Constructor
*/
public Semaphore(int value) throws Exception
{
if (value < 0)
throw new Exception("Negative value provided for initial constructor.");
this.value = value;
}
Run Code Online (Sandbox Code Playgroud)
处理异常以实例化信号量对我来说似乎过于沉重,所以我正在考虑将任何负值静默设置为零,即:
/**
* Constructor
*/
public Semaphore(int value)
{
if (value < 0)
this.value = 0;
else
this.value = value;
}
Run Code Online (Sandbox Code Playgroud)