单步模式对于查找我们的程序非常有用,该程序在单次执行后未产生期望的结果。我们将其用于程序调试。类似地,就像要单独执行的操作一样,在“>”提示符下键入“ S”。我们可以清楚地注意到,地址<cr>的更改发生在S之后。给定的系统明确提示如下:
起始地址为:xxxx-yy /
其中内存地址为xxxx,所定位内存的内容为yy,这允许用户以所需的地址响应用户,从而开始单步处理。如果我们从指定的位置xxxx执行要执行的程序,则响应<sb>。我们将<sb>表示为空格键,在键盘上过宽。如果程序的位置是从C000H开始,我们将响应'C000 <sb>'。
之后,系统将显示“ C000-21 /”,其中存储内容21的位置为C000H。然后,对<sb>的响应由我们完成。
检查寄存器命令:为了检查寄存器值,我们键入'X',而不更改地址<cr>。整个系统的提示如下:
寄存器:
要求用户使用所需的寄存器名称进行响应。如果要查看寄存器C寄存器的内容,我们键入C而不更改地址<cr>。我们立即得到回应
C5xx-
其中寄存器C的内容为xx,这允许用户在为xx指定的位置输入新值。例如,如果我们希望寄存器C具有36H,我们将响应36并更改地址<cr>或<sb>。如果用户不希望更改寄存器的内容,则响应<cr>或<sb>地址的更改。如果是地址更改,即<cr>,则命令X终止,并再次出现提示“>”。如果变为<sb>,则系统将自动显示寄存器D的内容,这使用户可以选择向寄存器D输入新值。通过重复使用<sb>,我们可以看到所有内容,并且如果需要,我们可以修改每个寄存器的所有内容。寄存器A的顺序
A,B,C,D,E,F,I,H,L,SPH,SPL,PCH和PCL
F是标志的寄存器,SPH和SPL是SP,PCH和PCL的最高有效位和最低有效字节。8位BITS的寄存器I提供中断的屏蔽状态。
Display memory命令:为了显示存储器的内容,我们键入'D'而不更改地址<cr>。提示完成为
起始地址:
要求用户以所需的起始地址进行响应以进行存储器显示。要求用户以十六进制形式提供不带H后缀和<cr>(例如'C200 <cr>')的内存地址。
然后,系统提示用户输入结束地址。当用户提供结束地址时,所需存储位置的内容将显示在终端上,并再次出现“>”提示。使用此命令,我们只能看到多个内存位置的内容,而不能更改它们。要修改内存位置的内容,我们使用修改后的memory命令。
在检查完寄存器/内存后,单步继续:必须说几步指令使程序单步执行后,寄存器和存储器的内容使我们满意。之后,我们以单步模式继续该程序的其余部分。
我们在提示符“>”处键入“ S”,而无需更改地址<cr>。系统提示如下:
起始地址为:xxxx-yy
其中xxxx是内存的地址,而所定位内存的内容是yy。指令的正确地址是xxxx,我们必须继续执行单步操作。对于单步终止,我们以地址<cr>的更改作为响应,并出现提示“>”。最终检查寄存器和存储器的内容,然后单步执行直到程序结束。
Display memory命令:为了显示存储器的内容,我们键入'D'而不更改地址<cr>。提示完成为
起始地址:
要求用户以所需的起始地址进行响应以进行存储器显示。要求用户以十六进制形式提供不带H后缀和<cr>(例如'C200 <cr>')的内存地址。
然后,系统提示用户输入结束地址。当用户提供结束地址时,所需存储位置的内容将显示在终端上,并再次出现“>”提示。使用此命令,我们只能看到多个内存位置的内容,而不能更改它们。要修改内存位置的内容,我们使用修改后的memory命令。
在检查完寄存器/内存后,继续执行单步操作:必须说几步指令使程序单步执行后,寄存器和存储器的内容已使我们满意。之后,我们以单步模式继续该程序的其余部分。
我们在提示符“>”处键入“ S”,而无需更改地址<cr>。系统提示如下:
起始地址为:xxxx-yy
其中xxxx是内存的地址,而所定位内存的内容是yy。指令的正确地址是xxxx,我们必须继续执行单步操作。对于单步终止,我们以地址<cr>的更改作为响应,并出现提示“>”。最终检查寄存器和存储器的内容,然后单步执行直到程序结束。