I've spent a good while getting my AVR development system set up with the full GCC tool chain (everything is the most recent current stable version) and I have solved most issues with it but one.
This following code gives me an error which I just don't get. The AVR assembly manual states that the sbi instruction can accept 0-7 as a cons...
So I took a look at the x86 assembly language; All the commands are pretty clear but: I don't see anything that can actually trigger something in the computer like: Access RAM and not only CPU registers, read from the HDD, etc.
How do you go beyond computations in the CPU with assembler?
...
Is it possible to square a number stored in a register (say eax) without doing any multiplication (by using shifts, etc)? I will be squaring a 16-bit number in 32-bit assembly so overflow shouldn't be an issue. I am using NASM x86 assembly to create the program. Thanks in advance for your help.
...
Hello.
I've literally only just started looking to learn Assembly language. I'm using the NASM assembler on Windows Vista.
Usually, when I begin to learn a new language, I'll copy someone else's Hello World code and try to understand it line-by-line. However, I'm finding it suprisingy difficult to find a Hello World program that doesn...
hi all , i am trying to read a string from user in TASM assembly , i know i need a buffer to hold the input , max. length and actual length , but i seem to forgot how exactly we declare a buffer
my attempt was smth like this
Buffer db 80 ;max length
db ? ;actual length
db 80 dup(0);i think here is my problem but can't re...
Hello. I would like to know if after calling functions the data I have in the stack is persistent. Like, I would like to know if (assuming cdecl convention) can I do this (independently of what is done in the function X and independently of optimizations):
push 1
push 2
push 3
call X
call X
call X
add 12 esp
?
Also, let's say that be...
So I was thinking about languages the other day, and it struck me that any program written in a compiled language that interacts with the Internet is then translated into assembly that has to interact with the Internet. I've just begun learning a bit of x86 assembly to help me understand C++ a bit better, and I'm baffled by how something...
I'm trying to get my feet wet with MIPS assembly language using the MARS simulator.
My main problem now is how do I initialize a set of memory locations so that I can access them later via assembly language instructions?
For example, I want to initialize addresses 0x1001000 - 0x10001003 with the values 0x99, 0x87, 0x23, 0x45. I th...
I want to do the following:
I have a function that is not mine (it really doesn't matter here but just to say that I don't have control over it) and that I want to patch so that it calls a function of mine, preserving the arguments list (jumping is not an option).
What I'm trying to do is, to put the stack pointer as it was before that...
Hi everyone:
I just begin to study ARM assembly language, and am not clear about how to use MOV to transfer an immediate number into a register.
From both the ARM reference manual and my textbook, it's said that range of immediate number following MOV instruction is 0-255. But when I test on my own PC in ADS 1.2 IDE, instruction
MOV ...
I've run the following code snippet on the MIPS MARS simulator. That simulator is little endian. So the results are as follows:
lui $t0,0x1DE # $t0 = 0x01DE0000
ori $t0,$t0,0xCADE # $t0 = 0x01DECADE
lui $t1,0x1001 # $t1 = 0x10010000
sw $t0,200($t1) # $t1 + 200 bytes = 0x01DECADE
lw...
I'm a novice programmer who is attempting assembly for the first time. Sorry in advance if this is an incredibly lame question.
I have a character stored in the EAX register, but I need to move it to my DL register. When I try: mov dl, eax I get an error C2443: operand size conflict. I know that the eax register is 32 bit while the ...
Hey all
I have a method (C++) that returns a character and takes an array of characters as its parameters.
I'm messing with assembly for the first time and just trying to return the first character of the array in the dl register. Here's what I have so far:
char returnFirstChar(char arrayOfLetters[])
{
char max;
__asm
{
push eax...
Hello. I've been working through the tutorials on this webpage which progressively creates a bootloader that displays Hello World.
The 2nd tutorial (where we attempt to get an "A" to be output) works perfectly, and yet the 1st tutorial doesn't work for me at all! (The BIOS completely ignores the floppy disk and boots straight into Win...
Hello everyone,
I'm writing a compiler that converts source code (written in a small imperative programming language) to Intel AT&T 32-bit assembler.
I tend to spend a lot of time debugging, because of nasty offset-mistakes etc. in the generated code, and I would like to know if anyone knows of a tool to "walk through" the generated as...
Hello, people.
I am learning Assembly for IA-32 with MASM, using Microsoft Visual C++ Express Edition, and this difficulty came up. When I do this:
INCLUDE Irvine32.inc
QUANT = 47
.data
fibonacciVetor DWORD 1, 1, (QUANT - 2) DUP(0)
fileName BYTE "vetor.txt", 0
fileHandler DWORD 0
.code
main PROC
mov esi, 0
mov ...
I've been programming for x86 & x86-64 in assembly language for few months. Now, I want to move on to some different kind of processors.
MIPS, SPARC, PowerPC, Itanium, ARM of these I found ARM is being widely use. But the books I see that tutorials & books teach about MIPS more than all these other architectures.
Why is MIPS so popul...
Hey all;
Is there any way to link an application programmed in TASM ASSEMBLY to a windows form application or any kind of GUI?
Thanks
...
I need to get the difference of 2 signed integers. Is there an ABS() function in x86 assembly language so I can do this. Any help would be greatly appreciated.
...
For a project I would like to invoke the MBR on the first harddisk directly from DOS. I've written a small assembler program that loads the MBR in memory at 0:7c00h an does a far jump to it. I've put my util on a (DOS) bootable floppy. The disk (HD0, 0x80) i'm trying to boot has a TrueCrypt boot loader on it. When I run the tool in this ...