📜  8085脉冲波形程序

📅  最后修改于: 2021-06-28 14:17:30             🧑  作者: Mango

问题–编写一个程序来生成连续方波。使用D 0位输出方波。所需波形为:
方波

解释 –
可以通过向累加器加载AAH(10101010)并在每个循环中旋转一次模式来提供0/1位的备用模式。输出端口的位D 0用于证明逻辑0和1。因此,可以通过将累加器与01H进行“与”运算来屏蔽所有其他位。

例子 –

Accumulator   : 1 0 1 0 1 0 1 0
And with 01H  : 0 0 0 0 0 0 0 1
Output        : 0 0 0 0 0 0 0 0
So output => 0

After RLC :

Accumulator   : 0 1 0 1 0 1 0 1 
And with 01H  : 0 0 0 0 0 0 0 1
Output        : 0 0 0 0 0 0 0 1
So output => 1

程序 –

Address Label Mnemonics Comments
2000H MVI D, AAH Load bit pattern AAH
2002H ROTATE MOV A, D Load bit pattern in A
2003H RLC Change data to AAH to 55H and vica versa
2004H MOV D, A Save A
2005H ANI 01H Mask bits D7 to D1
2007H OUTPORT 1 Output the D0 bit
2009H JMP ROTATE Jump to ROTATE to change logic level

计划说明–

  1. 寄存器D装入AAH(10101010)。
  2. 位模式移至累加器。
  3. 位模式左移并再次保存在寄存器D中。由于累加器在程序中再次使用,因此必须进行保存。
  4. 屏蔽除第0位以外的所有位。
  5. 端口1的输出A