![]() |
Опять ASM - [учу] - мои вопросы
Код:
SSEG SEGMENT STACKКод:
XXXXXXXXXXXXXXXXXXXXXXX |
DJLOVE
SSEG SEGMENT STACK DB 80 DUP (?) SSEG ENDS DSEG SEGMENT MES1 DB 'GREEN','$' MES2 DB 'RED','$' MES3 DB 'BLUE','$' MES4 DB 'VIOLET','$' MES5 DB 'HOMEWORK BY DIMA L.','$' MES6 DB 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXX','$' MES7 DB 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXX','$' MES8 DB 'X','$' DATA DB 80 DUP (?) DSEG ENDS CSEG SEGMENT ASSUME CS:CSEG, SS:SSEG, DS:DSEG START: MOV AX, DSEG MOV DS,AX MOV AH,6 MOV BH,0A7H MOV CL,0 MOV CH,0 MOV DL,40 MOV DH,12 MOV AL,0 INT 10H MOV AH,6 MOV BH,0C7H MOV CL,40 MOV CH,0 MOV DL,79 MOV DH,12 MOV AL,0 INT 10H MOV AH,6 MOV BH,97H MOV CL,0 MOV CH,12 MOV DL,40 MOV DH,25 MOV AL,0 INT 10H MOV AH,6 MOV BH,0D7H MOV CL,40 MOV CH,12 MOV DL,79 MOV DH,25 MOV AL,0 INT 10H MOV AH,2 MOV BH,0 MOV DL,20 MOV DH,6 INT 10H MOV AH,9 LEA DX,MES1 INT 21H MOV AH,2 MOV BH,0 MOV DL,60 MOV DH,6 INT 10H MOV AH,9 LEA DX,MES2 INT 21H MOV AH,2 MOV BH,0 MOV DL,20 MOV DH,18 INT 10H MOV AH,9 LEA DX,MES3 INT 21H MOV AH,2 MOV BH,0 MOV DL,60 MOV DH,18 INT 10H MOV AH,9 LEA DX,MES4 INT 21H MOV AH,2 MOV BH,0 MOV DL,32 MOV DH,12 INT 10H MOV AH,9 LEA DX,MES5 INT 21H MOV AH,2 MOV BH,0 MOV DL,0 MOV DH,0 INT 10H MOV AH,9 LEA DX,MES6 INT 21H MOV AH,2 MOV BH,0 MOV DL,0 MOV DH,24 INT 10H MOV AH,9 LEA DX,MES7 INT 21H xor cx,cx loop: MOV AH,2 MOV BH,0 MOV DL,0 MOV DH,cl INT 10H MOV AH,9 LEA DX,MES8 INT 21H MOV AH,2 MOV BH,0 MOV DL,79 MOV DH,cl INT 10H MOV AH,9 LEA DX,MES8 INT 21H inc cl cmp cl,24 jnz loop mov ah,07h int 21h MOV AH,4CH INT 21H CSEG ENDS END START --------- Эх, давненько я под дос не программил (никогда :) Вот чего получилось, правый нижний символ хз как ставить (каретка вниз передвигается, а весь экран вверх соответственно) |
Madness
nu dik ya tebe prichinu dal vspomnit :) tochto ne uchil toka cl,25 ! nado :) |
DJLOVE
25 не надо - экран вверх поползет, финт ушами там какой то надо делать. Кстати горизонтальные линии тоже циклом можно сделать :) А че под дос пишешь, под винды легче и понятней ;) |
:) ги так надо под дос
ладно ждемс следуших уроков , будем чето делать посмотрим как у меня получитса ПС: заменил на 25 и никто никуда не лезит |
Ishi hint po intu 10h. Eto pryamoe uprawlenie video adapterom. Tam fokusi pokruche delat mojno ;-)))... Pomniu bila u menya figowinka - pereworachiwala ekraw tekstowom rejime s nog na golowu ;-))).
|
Madness
НЕ Маднес под виндой под виндой а вот под досом и надо ничинать. Если под досом все будешь знать и будет понятно все хитрости то под виндой тьфу плюнуть. (хотя не спрорю тяжело) Но хорошии програмист ассемблерщик должен знать хотябы полные азы асма под досом gi. P.S: Ладно только не спорить главное Я помню когда мой бывшии шев писал на ассемблере на агате базу данных вот это штука была леталааааа Супер. |
Servak bazi dannih na asme? Jestoko...
|
helldomain
gi а шо ты думал! Ассемблер дает власть над компьютером а жажда власти это один из инстинктов юзера(человека). :-) gi |
Hmm... Ya bi na asme stringowie funkcii klepal, a dbs na cpp.
|
подучить б INT , где инфу состать (самую простую) именно про Интерапты
|
|
Мужыки, вы чего плохому учите парня?
Не надо использовать прерывания для вывода на экран. Это можно сделать с прямым выводом. Будет и лучше и проще. А вообще то, года 3 назад я написал целую оперативку на асме. С эмулятором мультизадачности, с самым современным и красивым интерфейсом. Ну и эффекты всякие что можно в текстовом режиме делать влепил. А размер был что то около 10кб. Без единого прерывания. И работало в дос и без него. |
Interesno ochen. Dai hot posmotret. Interesno, kak ti ne polzujas BIOS'om ili pryamimi obrascheniyami k ustroistaw izbejal preriwanij. Podhod prosto interesnij gi.
|
Я свои собственные API написал.
Надёжнее и быстрее прерываний будет. Посмотреть могно. Сделаю скриншоты и вышлю на мыл :) Потому как русскому дать программу :atention: :))))) А вообще то, система там крута. С детьми окошками и всё такое. |
Nu togda udachi.
|
хм задача:
текстовыи фаил в котором буква Ф или w надо проверить 1 чистим екран 2 открываем фаил тхт с буквои Ф 3 читаем 1 баит из фаила в буфер 4 - если там буква Ф напишим в етом же фаиле ОК и закроем фаил - если там буква w нарисуем синее окошко, и в нем будет написано ОК - если по ошибке там написана любая другая буква, сразу выити в дос - если во время работы произошла ошибка сообшить об етом и выити в дос вот такое задание |
I w chem problemma? Smotri INT 21h dlya fenechek po otkritiju/chteniju/zakritiju failow.
|
helldomain problema v tom chto int po rabote s failom eto vse est
a vot kak soedebit eto vse v odnin kusok uuuu... |
A chto tam soedinyat? Nu otkril fail, nu proweril, otkrilsya-li on, esli net - error messagu i wihod, esli otkrlsya, chtiaesh poka ne nastupit EOF (ili po dline srawnish), proweryaesh to, chto prochital i potom zakriwaesh ego.
|
у меня была прога по нажатию стрелок прокручивал файл в окошке(n символов) если надо могу кинуть исходники (по-мойму сохранились), правда там библиотеки свои довольно большие но думаю разберешься если надо
|
Вложений: 1
Цитата:
|
Помогите с программой, может кто слышал такой симулятор ассемблера MIPS называется ? Надо написать на нем функцию Фибоначчи, помогите если не трудно, или ссылку где почитать
|
| Часовой пояс GMT +4, время: 10:38. |
Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.