|
|
| Посл.отвђт | Сообщенiе |
|
|
Дата: Ноя 8, 2004 19:51:53 Хелп! Необходимо определить четно ли двойное слово dx:ax по паритету и в случае если оно четно - выполнить переход... Заранее спасибо |
|
|
Дата: Ноя 9, 2004 21:24:58 Сорри за тупой вопрос, но что есть: чётность по паритету" ? |
|
|
Дата: Ноя 10, 2004 01:54:42 · Поправил: _Juicy На вскидку что-то типа xor bx,bx test ax,ax jpe _check_dx inc bl _check_dx: test dx,dx jpe _get_result inc bh _get_result: xor bh,bl je _nepexog_ Наверняка можно оптимизировать, пускай гуру подскажут. |
|
|
Дата: Ноя 10, 2004 18:44:37 2_Juicy: Большущее спасибо! 2S_T_A_S_: паритет есть количество единиц в двоичном представлении числа |
|
|
Дата: Ноя 10, 2004 18:49:59 · Поправил: pustota Может у кого нибудь есть еще идеи? Поделитесь пожалуйста... |
|
|
Дата: Ноя 10, 2004 19:50:27 > паритет есть количество единиц в двоичном представлении числа Наверное имеется ввиду чётное / нечётное количество единиц ? Тогда такой вариант, с использованием 32х разрядных регистров: bswap eax mov ax,dx test eax ;bswap eax ; восстанавливаем значение ax jpe parity_even |
|
|
Дата: Ноя 10, 2004 21:46:16 · Поправил: bogrus А если так? Или важен не результат, а какими инструкциями он получен? test al,1 jz четное |
|
|
Дата: Ноя 10, 2004 21:52:17 "паритет есть количество единиц в двоичном представлении числа" То есть 0x1 = 0001, 0x2 = 0010 будут нечетными, а 0x3 = 0011 - четным по паритету. |
|
|
Дата: Ноя 10, 2004 22:00:43 А ... я подумал о четности числа |
|
|
Дата: Ноя 10, 2004 23:16:31 Вот поэтому я и задавал свой вопрос :-) |
|
|
Дата: Ноя 11, 2004 10:16:21 PF (Parity Flag) A check of the low-oder eight bits of data operations. dx = 0000000100000000b ax = 0000000000000000b |
|
|
Дата: Ноя 11, 2004 14:41:01 bogrus Похоже, вы правы. А не подскажете, какой документацией по опкодам пользуетесь? pustota Тогда мой вариант не подходит... |
|
|
Дата: Ноя 11, 2004 14:51:49 · Поправил: bogrus _Juicy Та какая там у меня документация :) когда чего-то не получается, я быстрее нахожу ответ в гугле чем Adobe Acrobat 6.0 запускается Ж) з.ы. ну не всегда конечно |
|
|
Дата: Ноя 11, 2004 17:25:37 А мне гугл про младшие восемь бит ничего не сказал. Наверное, особый подход нужен :( К Админам. Предлагаю тему переместить в WASM.ASSEMBLER или WASM.A&O. |
|
|
Дата: Ноя 11, 2004 20:37:20 _Juicy я воспользовался вашей идеей и немного ее дополнил. Поскольку PF устанавдивается только по 8 младшим битам я просто сделал так xor bx,bx xor cx,cx _check_dh: test dh,dh jp _check_dl inc ch _check_dl: test dl,dl jp _check_ah inc cl _check_ah: test ah,ah jp _check_al inc bh _check_al: test al,al jp _get_result inc bl _get_result: xor bh,bl xor ch,cl xor cx,bx je _переход_ конечно, отчасти туповатое решение но результат вроде бы близок к нужному =)) |
|
Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.070 |