x86

What is the easiest x86 Embedded Linux?

I want to play around with some embedded linux. I want it to be able to run on an x86 processor (for start, it will be running on my regular PC). I have looked online, but the ones I have found seem hard to setup or lack proper documentation. So what are some good embedded x86 compatible linux distros that are easy to setup or have good ...

at&t asm inline c++ problem

My Code const int howmany = 5046; char buffer[howmany]; asm("lea buffer,%esi"); //Get the address of buffer asm("mov howmany,%ebx"); //Set the loop number asm("buf_loop:"); //Lable for beginning of loop asm("movb (%esi),%al"); //Copy buffer[x] to al asm("inc %e...

x86 max/min asm instructions?

Are there any asm instructions that can speed up computation of min/max of vector of doubles/integers on Core i7 architecture? Update: I didn't expect such rich answers, thank you. So I see that max/min is possible to do without branching. I have sub-question: Is there an efficient way to get the index of the biggest double in array? ...

Is a signed Android APK-File running on x86- and ARM-Android devices?

Android APK-Files are not binaries but byte-code-files. So is it possible to install the same APK-File on both - on x86-Android-Devices and ARM-Android-Devices? There are some x86-Netbooks with Android installed planned and I wonder if it is possible to run the APK-Files on both kinds of devices? Best regards, Tom ...

How do you populate an x86 XMM register with 4 identical floats from another XMM register entry?

I'm trying to implement some inline assembler (in C/C++ code) to take advantage of SSE. I'd like to copy and duplicate values (from an XMM register, or from memory) to another XMM register. For example, suppose I have some values {1, 2, 3, 4} in memory. I'd like to copy these values such that xmm1 is populated with {1, 1, 1, 1}, xmm2 wit...

Right way to detect cpu architecture?

I'm attempting to detect the right cpu architecture for installing either a x86 msi or x64 msi file. If I'm right, for the msi I need the os cpu architecture I'm not totally sure if my way is right because I can't test it. What do you think? private static string GetOSArchitecture() { string arch = System.Environment.Get...

Run x86 msi setup on x64 os / platform

Is it possible (and recommented) to ship a x86 app only in a x86 msi setup which is executed as x86 app on 64 bit os / cpu? ...

What do the brackets mean in x86 asm?

Given the following code: L1 db "word", 0 mov al, [L1] mov eax, L1 What do the brackets ([L1]) represent? ...

Size optimizations for Assembly

What other optimizations, like the one presented here http://stackoverflow.com/questions/147173/x86-assembly-testl-eax-against-eax can one apply in order to reduce code size? I am interested especially in one-line optimizations like using test eax, eax instead of cmp eax, 0. Thanks. ...

MASM/NASM Differences

What are the syntax differences between the NASM and MASM assemblers? ...

Smaller instruction than "add esp, 4"

Me again. I'm having a lot of "add esp, 4" in my program and I'm trying to reduce its size. Is there any smaller instruction that can replace "add esp, 4" ? ...

Where can I find a 8080 to x86 assembler conversion tool ?

For a retro computing project, I need to translate a body of 1970s era 8080 assembly language into x86 form. There was a time when a tool to do just that was a key part of Intel's marketing for introduction of the 80x86 family. But my googling skills don't seem up to the job of finding that original tool or something similar. Does anyone...

Effectiveness of GCC optmization on bit operations

Here are two ways to set an individual bit in C on x86-64: inline void SetBitC(long *array, int bit) { //Pure C version *array |= 1<<bit; } inline void SetBitASM(long *array, int bit) { // Using inline x86 assembly asm("bts %1,%0" : "+r" (*array) : "g" (bit)); } Using GCC 4.3 with -O3 -march=core2 options, the C version t...

NASM Assembler Debugger

Is there a utility like CodeView that I can use to step through code assembled by NASM where I can see the current state of the registers/memory? ...

x86 instruction set roadmap

I'm just touching the surface of the x86 instruction set after a long period of high level programming. It's been about 20 years I had my first read on x86 assembly programming and from my googlings I get just lost with the myriad of instruction set references; from ones that mix new generations of processors (286, 386, 486...) to others...

Linux IA-32 memory model

Hi, I'm looking on the Linux IA-32 memory model processes see and have a simple question to it. What is there in the grey areas in the picture? Or is it just to show start and end of the memory? So, do text start at 0x0 and stack start at 0xFFFFFFFF? Best regards, Lasse Espeholt ...

Fast rgb565 to YUV (or even rgb565 to Y)

I'm working on a thing where I want to have the output option to go to a video overlay. Some support rgb565, If so sweet, just copy the data across. If not I have to copy data across with a conversion and it's a frame buffer at a time. I'm going to try a few things, but I thought this might be one of those things that optimisers w...

x64 Newbie Question: Building x86 code in an x64 (Visual Studio 2008) Environment?

I want to build a library (poco-1.3.6p2-all, for what it's worth) for x86. I just set up a new (clean) Windows 7 64 bit machine and I installed Visual Studio 2008 Standard. Nothing installed up to now on this box has had an installation error. The same library has built flawlessly on a Windows XP 32 bit system with VS 2008 Standard ins...

x86 emulator for training embedded development

I wish to learn more about the inner working of the computer, to enhance my knowledge about embedded system developement. At work, I never get involved with the low-level details (such as, the GDT, the loader of the code from flash to RAM, etc) as all these are already written. I'd rather not buy any other hardware currently. Is there ...

What are the different areas of Memory & Disk?

I'm neither sure about if this is a right place to ask nor sure about how to put my query. Let me put it this way: Main Memory starting at 0x00000 to 0xFFFFF. Diskspace starting at 0x00000000 to 0xFFFFFFFF. But what we'll be able to access will not be from 0th byte till last byte right? On hardisk I guess at the 0th byte we...