运行以下程序后BCD单元存入的内容是什么?ASC   DB   38H,39HBCD   DB   ?     ︰MOV  AL

运行以下程序后BCD单元存入的内容是什么?
ASC   DB   38H,39H
BCD   DB   ?
     ︰
MOV  AL,ASC
MOV  BL,ASC+1
MOV  CL,4
SHL   AL,CL
AND   BL,0FH
OR    AL,BL
MOV   BCD,AL
【正确答案】:BCD单元存入的内容为89H。此程序在ASC开始的两个字节中存放有字符8和9的ASCII码,然后将其转换为压缩的BCD码。
【题目解析】:把38H存入AL,39H存入BL,让AL左移4位,这样就变成了80H,通过AND BL,0FH把BL的高4位屏蔽,变成09H,这样AL与BL相或,就得到了89H。