资源描述:
《微机原理指导书.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、微机原理及应用指导书王普斌二○一一年八月目录第1章8086寻址方式11.1立即数寻址11.2寄存器寻址31.3直接寻址31.4相对寻址41.5习题5第2章8086指令系统62.1最基本的传送指令62.2堆栈指令72.3交换指令、换码指令、I/O指令72.4加减法指令82.5逻辑运算和移位指令92.6控制类指令102.7习题11第3章汇编语言程序设计143.1简单程序——两数相加143.2简单程序——拆分字节153.3分支程序——求绝对值153.4循环程序——求最大数163.5习题16第四章8255A应用184.18255A应用一——C口置位/复位184.28
2、255A应用二——DIP输入+LED显示214.38255A应用三——按钮输入+7SEG显示234.48255A应用四——DAC输出+7SEG显示254.58255A应用五——DIP输入+DAC输出274.68255A应用六——ADC输入+7SEG显示284.7习题31第1章8086寻址方式本章主要知识点è物理地址与逻辑地址èEmu8086的主要操作è各种寻址方式的特点è查找和修改内存单元与寄存器值1.1立即数寻址步骤1:运行emu8086。(1)运行emu8086,new→bin。(2)设置字体。点击options→setfont,选择MSGothic,粗
3、体,四号。步骤2:输入下面指令。MOVAL,80H;AL=80AH=00AX=0080MOVAH,10H;AL=80AH=10AX=1080MOVAX,2090H;AL=90AH=20AX=2090MOVBX,0FFFFH;BH=FFBL=FFBX=FFFFMOVBL,B;BL=A5BH=FFMOVCX,1000;CH=03CL=E8CX=03E8MOVDX,199;DH=00DL=C7DX=00C7MOVSI,2000;SI=07D0MOVDI,1001H;DI=?1001MOVBP,5;BP=0005MOVSP,0FFE0H;SP=FFE0HLT;hal
4、t!提示:立即数可以有十六进制(以H结尾)、二进制(以B结尾)和十进制三种表示方式。汇编指令的分号后面是注释部分。步骤3:编译。(1)点击compile图标,在弹出的窗口中输入文件名:立即数寻址,保存。(2)如果编译成功,显示:,点击close,进行下一步。否则,应修改错误,重新编译。步骤4:仿真。(1)点击emulate图标,弹出仿真窗口。其中:右侧窗口是汇编指令;左侧窗口是指令机器码;:这是当前要执行的指令;:这是该指令对应的机器码。该指令的机器码为两个字节,存储于05002H和05003H两个内存单元中。低字节B4(十进制180)存储于05002H,高
5、字节10(十进制016)存储于05003H。栏显示8086各寄存器当前的值,其中蓝色为刚被更新的值。(2)点击图标单步运行,并记下相关寄存器的值。(3)点击图标可以退到上一条指令。(4)点击可重新装入程序。(1)点击显示标志寄存器FR中各标志位的值。提示:操作数直接在指令中给出,是立即数寻址。è练习:填写?处各值1.2寄存器寻址输入下列指令并仿真。MOVAX,1505H;AX=1505MOVBX,AX;BX=1505NOTAX;AX=EAFANOTAX;AX=1505NEGAX;AX=EAFBNEGAX;AX=1505INCAH;AX=1605DECBH;B
6、X=1405MOVBL,AH;BL=16MOVDH,BH;DH=14提示:操作数存储在寄存器中,是寄存器寻址。1.3直接寻址步骤1:emu8086中输入指令Emu8086→new→⊙BIN→OK在;addyourcodehere行开始输入指令。MOVAX,[1070H]HLT;halt!步骤2:编译。(1)点击compile图标,在弹出的窗口中输入文件名:直接寻址,保存。(2)如果编译成功,点击close,进行下一步。否则,应修改错误,重新编译。步骤3:仿真。(1)emulate→singlestep,可见在registers栏只有IP变更:步骤4:查看与修
7、改内存。(1)点击aux→memory,弹出RandomAccessMemory窗口。修改逻辑地址为5000:1070,点击update,可以查看地址从5000:1070开始的内存单元的内容。可以看到都是00H。所以运行MOVAX,[1070H]后AX=0000H。(2)点击第1、2单元,键入数值,点击update,内存被修改了。(1)点击,,可见AX=3412H,即:提示:直接寻址就是在指令中直接给出操作数的地址,写在[]内。[]内的地址是偏移地址,段地址存储在默认的段寄存器DS中。另外,8086的存储规则是高地址单元存储数据的高字节,低地址单元存储数据的
8、低字节。è练习:输入下列指令,进行仿真,填写有关结果