420 微机原理-基于8086投票器仿真系统设计(仿真 程序代码 报告资料 )

完整版 电路图和程序代码 下载地址

https://pan.baidu.com/s/1yUiftSP7m3wWed8N02-_Ag?pwd=3456

部分代码展示
/* Main.c file generated by New Project wizard
 *
 * Processor: 8086
 * Compiler:  Digital Mars C
 *
 * Before starting simulation set Internal Memory Size 
 * in the 8086 model properties to 0x10000
 */
//#define  MY8255 0000H
#define  MY8255_A    0000H
#define  MY8255_B    0004H
#define  MY8255_C    0008H
#define  MY8255_MODE  000CH

char dtable1[] = {3FH, 06H, 5BH, 4FH, 66H, 6DH, 7DH, 07H, 7FH, 6FH};
char dtable2[] = {0BFH, 86H, 0DBH, 0CFH, 0E6H, 0EDH, 0FDH, 87H, 0FFH, 0EFH};
int c = 8;
int b = 0;

void init_8255(void);
void vote(void);
void count(void);
void display1(void);
void display2(void);

void main(void)
 {
    
   while (1)
   {
      init_8255();
      vote();
      count();
      if (b<4)			//判断投票是否通过
	 display1();
      else
	 display2();
      }
 }
 
 ///       
void init_8255(void)         //8255初始化 
 {
    _asm
    { 
       MOV  DX,MY8255_MODE         ;初始化8255工作方式 
       MOV  AL,89H                 ;方式0,A口输出,C口输入  
       OUT  DX,AL    
    } 
 }
 /
 
/
void vote(void)			//输入投票
 {
    _asm
    {
       MOV DX,MY8255_C
       IN AL,DX
       NOT AL
       }
    }
/

/
void count(void)		//统计投票人数
 {
    _asm
    {
       MOV CX,c
       MOV BX,00H
    LOOP1:
       TEST AL,80H		;将输入人数与10000000对比,相同则计数1
       JZ NEXT
       INC BX
       MOV b,BX
    NEXT:
       SHL AL,1			;将输入人数左移移位,依次对比
       LOOP LOOP1
       }
    }
/

/
 void display1(void)
  {

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值