Questions tagged [irvine32]

A 32-bit MASM library and macros targeting the Win32 Console

Irvine32 is a library that was made available in Kip Irvine's book Assembly Language for x86 Processors. The book is regularly used in academia as a teaching tool.

The library is simple in design and is meant to take make certain low level tasks that students encounter easier to handle. The library is designed to be used in 32-Bit protected mode targeting Win32 console applications.

The library itself and the macros require MASM or MASM compatible assembler capable of generating 32-bit code.

There is a reference online that can be downloaded as .chm file (self-extracting exe: IrvineLibHelp.exe).

617 questions
2
votes
1 answer

MASM string reversal

Alright, Im going about this, with what is probably a really complicated solution, but its the first thing that popped into my head. I need to write an assembly language program that reverses a "source" string, without using a "target" string ( a…
Dalton Conley
  • 1,599
  • 2
  • 28
  • 36
2
votes
2 answers

Assembly newbie requesting help: signed integer division + "truncating to an integer"

I asked a question regarding this code several days ago, so some of you may find it familiar. For those of you who do not find it familiar, what this code is supposed to do is request 25 signed integers from the user and store them into an array;…
Proto
  • 99
  • 5
2
votes
1 answer

Assembly newbie requesting help: Putting something in an array

Ultimately, what I am trying to do is make requestInput repeat 25 times and store the input it receives from each iteration into the following index in theSINTArray, but I'm not sure how to put something into an array. The looping I will take care…
Proto
  • 99
  • 5
2
votes
1 answer

Assembly (masm) array manipulation

New to assembly and very stuck on how do this: I have a user specified array. The user inputs the length and the characters. My problem is I need move all the vowels to the beginning of the array. This is my current progress INCLUDE…
J_001
  • 21
  • 5
2
votes
2 answers

MASM x86 Access Violation While Running Loop

I have an array of two-byte integers, which I am populating with random 3 digit numbers, using ESI to walk through the array. I am getting an access violation when I attempt to access the 9th element of the array and store it in ESI. ARRAYSIZE =…
hudspero
  • 139
  • 1
  • 1
  • 9
2
votes
1 answer

Clear Screen Without Interrupt

I'm writing a game using MASM, I use ClrScr which is a procedure in Irvine32.inc but it can't clean the whole console window some char still remain. My code is run under 32-bits system, so I can't use "int" instruction I am trying to write a…
CasparChou
  • 23
  • 5
2
votes
1 answer

Assembly: Stack Parameters instead of Registers

I've come across an issue in MASM assembly. I'm having trouble understanding how to use stack parameters instead of registers. I came up with a silly "program" to help me better understand the concepts. If you would, write a program to prompt the…
Bob
  • 1,344
  • 3
  • 29
  • 63
2
votes
2 answers

Location and Highest value in array

So i am trying learn assembly and my practice sheet has an example where i have to create a program to input 10 numbers one at a time into an array. I have to print the highest value and when it was entered. I have barely any exp in comparing but I…
2
votes
3 answers

How to add values?

New to Assembly language, reading a book here. I'm trying to do an simple basic exercise. Using appropriate registers, I have to add 100, 200, 300, 400, 500. Don't know where to start with this program. This is the outline of the program, now I need…
CSStudent
  • 115
  • 1
  • 2
  • 9
2
votes
1 answer

Printing an array using MASM with Irvine32 library

My program accepts 4 integers and is suppose to display them back to the user. When printing the values I don't get the expected results. I'm using MASM with Kip's Irvine32 library My code is: include irvine32.inc .data msg byte "Enter a…
Talal Ahmed
  • 21
  • 1
  • 4
2
votes
1 answer

Moving string between variables

I am writing a MASM program using the Irvine32 Library from my textbook. I want to line up my printed columns, but I couldn't finds anything on how to terminate a string with a tab-stop, /t for C/C++, so I made a procedure that determines how many…
gangwerz
  • 435
  • 2
  • 8
  • 18
2
votes
1 answer

cant figure out what is wrong with code

I am supposed to display the numbers 1 through 20 but I can not figure out what's wrong. At the beginning it is going correct but it is going to 21 instead of 20. INCLUDE Irvine32.inc TITLE 1through20 .data .code main proc sub eax, eax mov eax,…
Matt
  • 13
  • 4
2
votes
1 answer

Assembly: Printing a line in Different Colors

I'm attempting to add two numbers together, and then print resultMsg in 4 different colors as mentioned in colors. Code: INCLUDE Irvine32.inc .data prompt1 BYTE "Please type your first integer:", 0dh, 0ah, 0 prompt2 BYTE …
Bob
  • 1,344
  • 3
  • 29
  • 63
2
votes
0 answers

Prompting user for integer and adding to array in Assembly Language

For my x86 Assembly Language class we were given an assignment wherein we needed to take in 12 integers and store them in an array called Autumn, and then display them. My question is why with this code: INCLUDE Irvine32.inc .data Prompt1 BYTE…
Riley Emance
  • 41
  • 1
  • 5
2
votes
1 answer

Reading a BYTE array into a DWORD array with a loop

This is a question identical to previous post. The objective is to take a BYTE array of 2, 4, 6, 8 ,10 and insert them into a DWORD array via a LOOP to display them. This is my latest attempt. INCLUDE Irvine32.inc .data Array1 BYTE…
caboose103
  • 33
  • 5