עבור לתוכן

עזרה דחופה בפרוייקט באסמבלר!

Featured Replies

פורסם

הקוד החדש למטה.

פורסם
  • מחבר

עדכון :

הנה הקוד החדש :

.model small
.stack 100h
.data

logo db ' ___ ',10,13
db '| _ )_ _ ',10,13
db '| _ \ || | ',10,13
db '|___/\_, | ',10,13
db ' | |__/ ',10,13
db ' |________ ______ ',10,13
db '___ __ \ ___ __ \ ',10,13
db '__ / / /________ /_/ / ',10,13
db '_ /_/ /_/_____/ ____/ ',10,13
db '/_____/ /_/ $',10,13

line db '. ASCII Code :',10,13
db '',10,13

;------------------
.code
mov ax,@data
mov ds,ax
call clear
;------------------



mov dx, offset logo
mov ah, 9
int 21h

;------------------
call delay
call clear
;------------------
xor bx,bx
;--------------------------
waitk: mov ah, 0 ; wait for any key....
int 16h
;------------------
cmp al, 27 ; if key is 'esc' then exit.
je exit_code
;------------------
mov ah, 0eh ; print it.
int 10h
mov dx, offset line
mov ah, 9
int 21h
sub ah,30
mov ah, 0eh ; print it.
int 10h
;------------------
inc bx ; increase bx on every key press.
;------------------
jmp waitk



mov ah,7
int 21h

;------------------
exit_code:
mov ah,4ch
int 21h
;------------------




clear:
mov ax,3
int 10h
ret

delay:
mov bx,7fffh
x:mov cx,0ffffh
x1:loop x1
dec bx
jnz x
ret

end

mov ah, 0eh ; print it.

int 10h

mov dx, offset line

mov ah, 9

int 21h

sub ah,30

mov ah, 0eh ; print it.

אני צריך שפה יודפס קוד ה ACSII של התו שקלטנו סעיף קודם.

פורסם

תכתוב חלפן כספים או משו... נראלי יותר פשוט. שולה מוקשים זה סיבוך מטורף. כל פעם להדפיס את הלוח מחדש, להתעסק עם מערכים דו מימדיים גדולים - לא סימפטי.

פורסם
  • מחבר

עדכנתי הודעה קודמת.

החלפתי את הפרוייקט.

כל מה שאני צריך רשום בהודעה קודמת :)

פורסם
  • מחבר

אך אחד לא יכול לעזור :\ ?

פורסם

אם תסביר מה הקוד שלך אמור לעשות ומה הבעיה, אולי יוכלו לעזור לך.

פורסם
  • מחבר

הקוד קולט כל פעם קולט לחיצה במקלדת, כל ליחצה חוץ מ Esc שעוצרת את התוכנית.

התוכנית גם סופרת כמה פעמים לחצו.

מה שאני צריך זה :

1. להדפיס כמה פעמים לחצו [bx].

2. להדפיס את הערך ה ACSII של הלחיצה - דוגמה : Esc זה היה מדפיס 27 אם התוכנית לא היתה נסגרת. תודה.

פורסם
  • מחבר

אפ.

אני צריך להדפיס את מה שיש ב al ואת הערך ה ASCII של מה שיש ב al.

פורסם
  • מחבר

עדכון :

הקוד החדש :


[left]
.model small
.stack 100h
.data

logo db ' ___ ',10,13
db '| _ )_ _ ',10,13
db '| _ \ || | ',10,13
db '|___/\_, | ',10,13
db ' | |__/ ',10,13
db ' |________ ______ ',10,13
db '___ __ \ ___ __ \ ',10,13
db '__ / / /________ /_/ / ',10,13
db '_ /_/ /_/_____/ ____/ ',10,13
db '/_____/ /_/ $',10,13

msg2 db 'Press any key to get his ASCII Code. Press Esc to quit.',10,13
db '$'

msg2 db ' .ASCII Code : . Press another key, to get his ASCII Code. Press Esc to quit.',10,13
db '$'

.code
mov ax,@data
mov ds,ax

call clear

mov dx, offset logo ;print my logo.
mov ah, 9
int 21h

call delay ;call delay function for taking time.
call clear ;give me a clean MS-Dos screen.

mov dx, offset msg1 ;print my logo.
mov ah, 9
int 21h

coun: mov ah, 1h ; keyboard input subprogram.
int 21h ; read character into al and print it.

cmp al, 27 ; if key is 'esc' then exit.
je stop

inc bx ; increase bx on every key press.

mov dx, offset msg2 ;print my logo.
mov ah, 9
int 21h

jmp coun

stop: mov dx, offset logo
mov ah, 9
int 21h

mov ah, 0
int 16h






;---------------------------------------------------------

mov ah,7
int 21h
mov ah,4ch
int 21h

;---------------------------------------------------------
clear:
mov ax,3
int 10h
ret

delay:
mov bx,7fffh
x:mov cx,0ffffh
x1:loop x1
dec bx
jnz x
ret
;---------------------------------------------------------

end[/left]

כשקולטים תו, הערך שלו נכנס ל al, נניח עבור 'a' זה יהיה 61. איך אני מדפיס את הערך עצמו, ולא את 'a' ?

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

דיונים חדשים