作者A1987331 (Weinor)
看板ASM
标题[问题] 新手写组合语言 试了好久不知道怎麽改了 囧
时间Wed Oct 17 21:00:46 2007
第一次碰组合语言 第一次写作业 完全不懂一堆指令码
问题是设计一个程式 扑克牌游戏
老师上课有讲过判别有没有中奖的部分(老师发的讲义)
中奖是有one pair,two pairs,三条 顺子 同花 同花大小顺
但老师回来要我做的是
自己输入五张扑克牌(讲义的好像是随机出现五张扑克牌数值)
然後再去判别有没有中奖 中奖那部分还不考虑
现在我卡在输入五张牌的部分 ml asm档一直有错可是不懂错在哪
他是说 无效命令运算数
以下是我的部分程式码
.model small
;
.data
;
card_5 db 0h
;
.stack 1000h
;***************************************
code segment ;
assume cs:code,ds:code
org 100h
;---------------------------------------
start: mov si,4 ;
mov bx,[card_5] ;<<<跟card_5有关的一直出错
loop1: mov ah,0 ;
int 16h ;
mov al,0 ;
int 16h ;
mov dh,ah ;
mov dl,al ;
mov [card_5 + si],dx ;<<<<也是ˊˋ
mov ah,2 ;
dec si ;
cmp si,0 ;
jge loop1 ;
int 21h ;
mov ax,4c00h ;
int 21h ;
;---------------------------------------
code ends
;****************************
end start
我把说明牌名称的代码和中奖名称的说明省掉了!!!
麻烦高手帮一下说明@@a实在很不懂~~
--
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 125.231.212.46
1F:→ final01:请教板主最好~对吧 10/17 23:22
2F:推 final01:你定址方式用错了吧?mov bx,card_5[si]这样?? 10/17 23:24
3F:→ final01:我错了 10/18 00:04
4F:推 zxtony007:徐老大? 10/20 18:41
5F:推 A1987331:是徐老大XD 10/22 21:57
6F:推 loveflames:FCU的又一个= =...,int 21h有很多好玩的功能 10/24 01:16
7F:→ loveflames:有空就去玩玩 10/24 01:17