- Strength to Increase Rep
- +11
- Strength to Decrease Rep
- -2
- Upvotes Received
- 46
- Posts with Upvotes
- 43
- Upvoting Members
- 30
- Downvotes Received
- 4
- Posts with Downvotes
- 4
- Downvoting Members
- 4
389 Posted Topics
Re: I assume you mean for a PC based 80x86 processor running DOS? Actual firmware uses a reset vector for code startup. Lookup a *.com file. | |
Re: Not to cloud the issue, but first you need to deterimine if you are working with signed versus unsigned data? You need to use a different compare based upon the type of data you're using! Above & Below --> Unsigned Less & Greater --> Signed Unsigned: JA, JNBE Jump if … | |
Re: How about a color wheel. The angle on the wheel is used to calculate the RGB required to display that color! You select a ilumination level, 0.0=black 1.0=white, and then rotate through a 360 degree wheel at that luminance level! | |
Re: Different ways. One is to clear the screen yourself by writing to the display Segment:Offset. Using Video Services interrupt 10h, command ah=0 Set the video mode again! (Not really the best way to do it but should work!) I prefer the write to memory myself method! It's been many years … | |
Re: You are in a multi-threaded environment. Other threads in your application are taking time slices. Other applications are pre-empting and taking time slices. What I usually do is bump my application priority up to real time, set that's thread priority to real time., and then call the function N=10,000 times … | |
Re: I like using IOCP I/O completion Ports. Works very nicely for minimal threads to maintain thousands of sockets! Works well for only a couple sockets as well! Its a worker thread to event manager. It involves, events, sockets, worker threads, and a IOCP setup. You can even assign a user … | |
Re: Become a student member of I.E.E.E. [url]www.ieee.org[/url] | |
Re: RADIX ? Haven't heard of that! TEST is a Read-Only AND. Does the same AND but the result is not stored, but the flags are still set! [code] A B A ^ B 0 0 0 0 1 0 1 0 0 1 1 1 [/code] For SHL MSB is … | |
Re: You need something like the following. I did this in an editor so you'll have to debug it! Note the comments! [code=Asm] .model small .stack .data .code start: mov ah,1 int 21h ; DOS - Read character from StdIn (Key) ; al=char read ; mov ah,2 ; mov dl,0ah ; … | |
Re: Save an uncompressed TGA or BMP file. Download the header specification, extract width, depth, bits per pixel information from it. Then write your raw loader. Start with a 24 or 32-bit image it will be easier. Keep it small!!!!!!! Then once it works, try a nice picture. Then use a … | |
Re: Do some research into what fields interest your instructor. Review research white papers in your University library. Find something that interests you. Then do more research, then make your proposal! Quite often this project turns into your own business when you graduate! If its unusual and has a niche and … | |
Re: Isn't this posting a violation of the forum rules? | |
Re: [QUOTE=cmsc;1260551]we were asked to make a program that adds two digit numbers. I was ableto scan and add the input numbers but I have trouble doing the 'carry' part. i can't divide the sum of the ones place integers by ten. what's wrong with this code? : [CODE] mov al,bl;move … | |
Re: If you have an Intel 82802 in your system.... [url]http://www.intel.com/assets/pdf/manual/298029.pdf[/url] If not, read a high precision clock register, blend the bits in a tight loop, peek at a keyboard key until a user interaction is applied such as a keystroke. You can seed the number generation from the high precision … | |
Re: The default for a [si] [esi] [rsi] access is the ds: Data segment / selector. But it can be overriden with an alternate such as AncientDragon indicated cs: Code Segment/Selector, es:Extra Segment/Selector, ss: Stack Segment/Selector fs, gs Selectors Another item to note is LODS also increments the index by the … | |
Re: Maybe if you type your request in English and not txt your request might be easier to understand! If you are about to become a Senior in a University you need to figure out your project on your own. We'll help nudge you once you set your compass. What language … | |
Re: AYNAZ - You need to post your own problem as a new posting! Depends on the string! If an ASCIIZ (NULL terminated ASCII string) merely check each character until you find the NULL character. You can count with each loop, or once the NULL is found, merely subtract the new … | |
Re: I'm not up to speed on that chip but... Are you allowed to set the ADEN and clear the ADFR bits simultaneously or in sequence? After setting the states you should initiate the conversion process Set bit 6 in ADSC WAIT until ADCSRA bit 6 goes low! Then read ADCL … | |
| |
Re: I always love classroom assignments that involve playing cards! First create your symmetrical enumeration to what ordering you prefer. Sequential #'s per suite. Or sequential interlaced suites. So technically, mathematically your enumeration maps directly to a card number and suite. This makes it much easier for card shuffling and card … | |
Re: We aren't going to do your homework for you! But here are some hints! [code] ; Insert your code between the [ code] and [ /code] declarations [/code] COMMENT THE CODE, so you can understand it better! | |
Re: I don't think people want to be thought of as meat and thus eaten! Too many movies on that topic. If you mean "meet" may I suggest going back to school and continuing your education. You'll meet others wanting to be in the same industry and eventually through internships, those … | |
Re: I think you mean {0,0} to {799,599}. Slope of a line is rise over run. y2-y1 ----- x2-x1 Screen boundary is unimportant. Line {30,50} to {910,100} dy = 100-50 = 50 dx = 910-30 = 880 slope m = 50 / 880 So to clip at right y = mx … | |
Re: Rubbish? You mean a pointer to data memory? mov eax,[eax] moves the contents of memory pointed to by eax into the eax register! You don't have enough information, for more detail other then eax is loaded from the stack as a passed argument, but its compared to other registers that … | |
Re: Sure 9 1 4 ascending 1 4 9 descending 9 4 1 That's it until you post your code! | |
Re: There are two general purpose 80x86 additions common to all processors. [code] add eax,ebx ; add no carry [/code] [code] adc eax,ebx ; add with carry [/code] 80x86 can load from memory or registers. Your variables row and boat are in scope and on the stack so they are accessed … | |
Re: Well it's in assembly language for an old 8-bit 8080 processor. I didn't look at any of the art files as Norton decided there was atleast one problem with that webpage! Portal.asm is assembled as raw binary intermix of music, ASCII text and ASCII based 40x20 image data. sidlyric.asm is … | |
Re: Branch prediction depends upon which processor family and which exact processor. Branch prediction has changed over time! For example on older 80x86 processors, "if a branch to an earlier address, then it is predicted that the branch will be taken! As it is a loop!" On newer processors last branch … | |
Re: Look for data not set! You should probably have a difference between a debug and release build as well. Data will be initialized differently. Also running within an I.D.E. will move code around in memory! Also look for a memory overwrite. Writing past the end of allocated memory. Check for … | |
Re: Sounds like a class problem. On a piece of paper create rows [code] Passed Arguments [16] [12] [8] [4] [0] [-4] [-8] [-12] [-16] [-20] Temporaries [/code] Mark which one of these is your return address, and your passed in arguments, your temporary local arguments and then single-step your code! … | |
Re: Some initial recommendations... [code] ;;;lodsb mov bl,al mov bl,[si] inc si test bl,0001b ;;;and bl,0001b ;;;cmp bl,0001b jne yes ;;;je no jmp no ;;; CODE NEVER GETS HERE!!! jcxz leave [/code] You loop but what happens on the last itertion? Code flows into yes. To move the code [code] mov … | |
Re: What are you trying to do with... mov string,mtstr and mov msg,mtstr The only memory-to-memory operation is a movsb, movsw, movsd All other operations are immediate to reg/mem, reg to reg/mem, reg/mem to reg. | |
Re: What are you trying to do? Each fraction number has 3 components? (int) (char) (int) You print a # / # are you trying to divide? but you don't divide? Why are three of your last equations products, and one a summation? And what's with the comparisons? In a fraction … | |
Re: N << 2 Is a logical shift left, 2 bits. There is no arithmetic left shift! Same as a multiplication x4 N >> 2 Is a logical shift right 2 bits if N is unsigned integer. Div 4 N >> 2 is an arithmetic shift right 2 bits if N … | |
Re: Save your processing time. [code] for (i = 1; i < numOfMarks; i++) { int v = arrayMarks[i]; // Save to a tmp. variable so save index math time if (v > currMax) { currMax = v; } else if (v < currMin) { currMin = v; } } [/code] | |
Re: You're losing time for code delays. All 3 numbers have a common denomiator. How about a simple delay function of 100ms and then merely call it your 12, 15 or 18 times? 100ms is much easier to track then 10ms and thus no need for fine precision. If those numbers … | |
Re: You can read a character at a time. I personally find this very slow, and since computers these days have lots of memory... Load the entire file into memory that you allocate with one extra character space, and set it to a '\0' terminator. Then parse the file in memory. … | |
Re: Have you plotted this on paper? esi is 1st node edx is next node esi[0] save data esi = edx esi[1] save data esi[5] save data esi=edx esi[6]=0 <---- mov [esi].LLNode.NodeData, 0 You're writing into index #6, which is a stack overwrite. | |
Re: It's kind of late here but I'm assuming you're trying to build your own ASCII string by recursively doing the 10's base binary to ASCII. But why are you dividing by 2 instead of 10? You will need to add '0' 30 hex to each nested result, to change 0...9 … | |
| |
Re: You need to supply source code for us to review and make recommendations for! [code];Hint mov bl,[bx] ; Is one method for loading a single byte from memory cmp bh,bl ; Is one method for comparing two values [/code] etc. | |
| |
Re: Build trace tables! [code] MOV AX, 1234 AX:1234 CH:-- DI:---- DX:---- BP:---- MOV BP, AX AX:1234 CH:-- DI:---- DX:---- BP:1234 MOV DX, 999 AX:1234 CH:-- DI:---- DX:999 BP:1234 MOV DI, DX AX:1234 CH:-- DI:999 DX:999 BP:1234 MOV CH, 222 [bp+di] ? <-- [2455] <-- [1234 + 999 + 222] [/code] | |
Re: The embedded firmware in the ROMS typically have their own reserved interrupts. On a PC 10h is the video Bios so not available! There are many others. Since you're writing your own O.S. then 20h and 21h are up for grabs as that is the DOS interrupt and if you … | |
Re: You're using 80x86 assembly language, and I'm assuming you're using a PC as a target platform. Under DOS the ports are accessible, under Win32, pretty much not, unless Win98 or earlier. Web Search PC bios, DOS interrupts, etc. I wouldn't just be throwing values and random ports. I know one … | |
Re: So you like infinite loops? [code] REPETE: CMP AL,'1' ...blah blah blah... CMP AL,'5' JE SAIR JNE REPETE ; <-- INFINITE LOOP!!!! [/code] Also you never return from a MAIN $100 entry. You actually use a DOS terminate command! SOMA code runs into SUBT SUBT code runs into MULT MULT … | |
Re: I see you're using 64-bit instructions. What is int 80h? I do see a problem! mov rcx,empty is loading a 64-bit from memory at that location mov rcx,offset empty loads the address of empty into the rcx register! | |
Re: You are scanning a 3x4 matrix. May I suggest building a bit array that will make edge detection and debouncing much faster. And no more multitude branch testing. [code] Edge[0] = Edge[1] = 0; LastKey[0] = LastKey[1] = 0xff; [/code] [code] ;;; Main KeyIn Loop Y1=Y2=1; Y0=0; a[0] = (X … | |
Re: I'm looking at your code, but I don't see your algorithm. If you're trying to find the Greatest Common Denominator, then I'm not seeing the algorithm. Several methods for a GCD. One is inner, outer loop. Subtract tmp divisor each time, looking for a divisor == 0 vs divisor < … |
The End.