Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: Assembly: masm32

KemXy [03.06.2003 11:18:51]

#

Miten tuolla MASM32 paketilla saa tehtyä DOS ohjelmia?
Kävin hakemassa http://win32asm.cjb.net sivulta DOS ohjelmille sopivan linkkerin, mutta ei auttanut.
Onko ohjelman "pohja" jotenkin erilainen? Ei ainakaan TASM:SSA käyttämääni runko toimi.

thefox [03.06.2003 12:19:07]

#

Minkähänlaista roskaa olet nyt assembloimassa ja linkkaamassa? Pistä esille niin katsotaan.

Olli Vanhoja [03.06.2003 22:08:55]

#

MASM vaatii muistaakseni hieman erilaiset aloitukset ohjelmalle.

KemXy [04.06.2003 09:51:08]

#

Joo eli edes hello world tapaista ohjelmaa en saanut kunnolla toimimaan. Ilmoittaa kohdasta "mov dx, offset Text", että "instruction operands must be the same size".

Assembloimisen ja linkkaamisen tein seuraavasti(väärät parametrit?)

ml /Cp /c joo.asm
link joo.obj, poo.exe
;joo.asm

.386
.MODEL SMALL
.STACK 1024

.DATA
Text db "hello",0

.CODE
start:
	mov	ax, @data
	mov	ds, ax

	mov	ah, 09h
	mov	dx, offset Text
	int	21h

	mov	ah, 4ch
	int     21h

end start

KemXy [04.06.2003 11:05:49]

#

Lueskelin myös vähän tuota Art of Assembly opasta. Onko kukaan koskaan lukenut sitä kokonaan? Kauhean pitkä ainakin PDF-versiona ;)

thefox [04.06.2003 15:52:14]

#

Vaihda:

.386
.MODEL SMALL
.STACK 1024

->

.MODEL SMALL
.STACK 1024
.386

Tuon /Cp switchin voi assembloimisvaiheessa jättää pois jos iskee koodiin rivin: "option casemap :none".

Nyt en jaksa muistaa olisiko se DOS-linkkeri ottanut jotenkin tavallisuudesta poikkeavasti nuo parametrit.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta