News:

MASM32 SDK Description, downloads and other helpful links
MASM32.com New Forum Link
masmforum WebSite

SSE Opcode Help File

Started by Farabi, August 08, 2008, 12:43:28 PM

Previous topic - Next topic

Farabi

I Did remember I did have a program explaining about "newest" instruction like SSE or SSE 2 or something. Anyone remember?
Those who had universe knowledges can control the world by a micro processor.
http://www.wix.com/farabio/firstpage

"Etos siperi elegi"

dsouza123

Google 26568.pdf from www.amd.com also instruction_tables.pdf from www.agner.org
together you will get info on each instruction and a list of which are in SSE/SSE2.

PBrennick

Farabi,

The OPcode database project contains limitted information about such instructions - SSE, SSE2 or SSE3, a brief description of what each instruction does. I am thinking of re-doing that project as a listview, but http://www.masm32.com/board/index.php?topic=6015.0 will get you what is already done.

-- Paul
The GeneSys Project is available from:
The Repository or My crappy website

jj2007

#3
Quote from: PBrennick on August 10, 2008, 03:36:02 AM
The OPcode database project contains limitted information about such instructions - SSE, SSE2 or SSE3, a brief description of what each instruction does.

Fantastic database! I have just converted it to my own "cardfile" - attach all files to some folder, then drag opcodes.jjn over jj_notes.exe
The tool allows better searches, e.g. type add flo, then TAB, then cursor down to scroll all records containing add and float.

EDIT(1): New attachment with minor change: Launching the jj_notes.exe loads the database if it is the only jjn file in that folder. Dragging is no longer needed.
EDIT(2): New attachment with small internal change: Field names are no longer searchable; try e.g. mul /m8

[attachment deleted by admin]

PBrennick

Hi JJ,
Thank you for your nice comment. I put a tremendous amount of work into creating the database but hardly no effort at all into the program as the program was just an example of how it could be used. I will restructure the database into a table, though, and use a listview. I was anxious to see what you have done but I just get file not found messages when the program tries to start and the program immediately exits. The error is unrevealing so I have no idea what is missing.

-- Paul
The GeneSys Project is available from:
The Repository or My crappy website

jj2007

Hi Paul,
All three files need to be extracted to some folder; then drag opcodes.jjn over jj_notes.exe
Normally that should work; it does not use the registry, so no de-installation necessary. Keep me posted, please.

RuiLoureiro

Quote from: jj2007 on August 10, 2008, 01:44:24 PM
Hi Paul,
All three files need to be extracted to some folder; then drag opcodes.jjn over jj_notes.exe
Hi jj2007,
                 I tried to search    SUB.   It  hasnt that  opcode.
                 Why ? Did i do some mistake ?
Rui

PBrennick

There are 10 entries for SUB.

As far as converting the database to an ASCIIZ delimitted database goes, it is done. I am now formatting the fields so that each column is the same size so that positioning can me mathematically computed. It is no small job, but it is progressing. I am also changing the similar opcodes so that they all have their own entry. As follows:


    db  "JAE/JNB/JNC", 0, "0F 83 iv", 0, "rel", 0, "Jump if above or equal (CF=0)", 0, "86", 0


becomes:

    db  "JAE", 0, "0F 83 iv", 0, "rel", 0, "Jump if above or equal (CF=0)", 0, "86", 0
    db  "JNB", 0, "0F 83 iv", 0, "rel", 0, "Jump if above or equal (CF=0)", 0, "86", 0
    db  "JNC", 0, "0F 83 iv", 0, "rel", 0, "Jump if above or equal (CF=0)", 0, "86", 0


It will add many more entries, but searching and sorting will be easier.

-- Paul
The GeneSys Project is available from:
The Repository or My crappy website

jj2007

#8
Quote from: RuiLoureiro on August 10, 2008, 08:54:29 PM
Quote from: jj2007 on August 10, 2008, 01:44:24 PM
Hi Paul,
All three files need to be extracted to some folder; then drag opcodes.jjn over jj_notes.exe
Hi jj2007,
                 I tried to search    SUB.   It  hasnt that  opcode.
                 Why ? Did i do some mistake ?
Rui

The search box is in the lower left corner, to the right of Exit. It should show 74 matches for sub, 62 for Sub and 53 for SUB. As soon as one uppercase letter is present, search becomes case-sensitive. I attach a screenshot.

[attachment deleted by admin]

Farabi

Those who had universe knowledges can control the world by a micro processor.
http://www.wix.com/farabio/firstpage

"Etos siperi elegi"

RuiLoureiro

Quote from: jj2007 on August 10, 2008, 10:26:46 PM
I attach a screenshot.

jj2007,
           Yes i know: «The search box is in the lower left corner, to the right of Exit»;

            But as far as i know and as we can see in the attached screenshot :(at the right window)

            Descr: a near return from subrotine and pop data.

            So it is not a SUB instruction
Rui

jj2007

#11
Quote from: RuiLoureiro on August 11, 2008, 02:51:09 PM

            Descr: a near return from subrotine and pop data.

            So it is not a SUB instruction
Rui

Correct: It does find sub in subroutine. Call it a bug if you like; the alternative would be a whole word search, i.e. to force typing sub* or subroutine in case you want to find subroutine. I prefer a fast reaction, because the upper left listbox shows you anyway the mnemonic.

But I thought your problem was you didn't find any sub?

Quote from: RuiLoureiro on August 10, 2008, 08:54:29 PM
Hi jj2007,
                 I tried to search    SUB.   It  hasnt that  opcode.
                 Why ? Did i do some mistake ?
Rui

Mark Jones

Fantastic work! Only thing left to do is add an entry for each opcode explaining (briefly) how each is used. Something like "Adds SRC to DEST, sets FLAGS (Z,C,S,P)." :U
"To deny our impulses... foolish; to revel in them, chaos." MCJ 2003.08

RuiLoureiro

jj2007,
          In fact, when i tried to search SUB i expected to get the SUB asm instruction and not
          SUBrotine. Like ADD, ADC, DEC, INC, etc. It will be better, in my opinion.
          For example: Is the instruction     «SUB        mem, 520»      correct ?
                             I type SUB and i dont find that sub.
Rui

jj2007

Quote from: RuiLoureiro on August 11, 2008, 08:44:21 PM
          For example: Is the instruction     «SUB        mem, 520»      correct ?
                             I type SUB and i dont find that sub.
Type sub /m8 to find the only entry that fits your search. Otherwise, open the original OpCodes.asc with a text editor and try to find it.